awesome-compose/nginx-flask-mysql/backend/Dockerfile
Milas Bowman 111c55d56b
nginx-flask-mysql: add dev envs support (#272)
* Add Docker Desktop Development Environments config
* Change port `5000` -> `8000` for Flask to avoid conflicts on
  recent macOS versions
* Improve DB health check (for non-dev envs case) to avoid
  producing a bunch of log spam

Co-authored-by: Guillaume Lours <guillaume@lours.me>
Signed-off-by: Milas Bowman <milas.bowman@docker.com>
2022-07-13 08:44:29 -04:00

36 lines
623 B
Docker
Executable File

# syntax=docker/dockerfile:1.4
FROM --platform=$BUILDPLATFORM python:3.10-alpine AS builder
WORKDIR /code
COPY requirements.txt /code
RUN --mount=type=cache,target=/root/.cache/pip \
pip3 install -r requirements.txt
COPY . .
ENV FLASK_APP hello.py
ENV FLASK_ENV development
ENV FLASK_RUN_PORT 8000
ENV FLASK_RUN_HOST 0.0.0.0
EXPOSE 8000
CMD ["flask", "run"]
FROM builder AS dev-envs
RUN <<EOF
apk update
apk add git
EOF
RUN <<EOF
addgroup -S docker
adduser -S --shell /bin/bash --ingroup docker vscode
EOF
# install Docker tools (cli, buildx, compose)
COPY --from=gloursdocker/docker / /
CMD ["flask", "run"]