todo-baggins/docker/dev/app/Dockerfile

28 lines
699 B
Docker

FROM rust:1.83-bookworm
RUN cargo install dioxus-cli diesel_cli \
&& apt-get update && apt-get install -y --no-install-recommends \
nodejs=18.19.0+dfsg-6~deb12u2 \
npm=9.2.0~ds1-1 \
supervisor=4.2.5-1 \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
COPY . /srv/app
WORKDIR /srv/app
RUN npm install
COPY docker/dev/app/supervisord.conf /etc/supervisor/conf.d/supervisord.conf
RUN chown -R 1000:1000 /srv/app \
&& chown -R 1000:1000 /usr/local/cargo \
&& mkdir -p /.local/share/dioxus \
&& chown -R 1000:1000 /.local/share/dioxus
HEALTHCHECK CMD curl --fail -H "Accept: text/html" http://localhost:8000 || exit 1
USER 1000:1000
CMD ["sh", "docker/dev/app/entrypoint.sh"]