From f07b774e75f4878f6ea0139ff9b4c60e5594c245 Mon Sep 17 00:00:00 2001 From: Fabio Manganiello Date: Thu, 17 Aug 2023 03:04:34 +0200 Subject: [PATCH] A better Dockerfile. --- .dockerignore | 6 ++++++ examples/docker/Dockerfile | 43 +++++++++++++++++++++++++++----------- 2 files changed, 37 insertions(+), 12 deletions(-) create mode 100644 .dockerignore diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000000..376b7571f6 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,6 @@ +**/.git +**/node_modules +**/__pycache__ +**/venv +**/.mypy_cache +**/build diff --git a/examples/docker/Dockerfile b/examples/docker/Dockerfile index 374ffbdc5d..137ed3ec54 100644 --- a/examples/docker/Dockerfile +++ b/examples/docker/Dockerfile @@ -1,19 +1,38 @@ -# Sample Dockerfile. Use platydock -c /path/to/custom/config.yaml -# to generate your custom Dockerfile. +FROM alpine +ADD . /install +RUN apk add --update --no-interactive --no-cache \ + python3 \ + py3-pip \ + py3-alembic \ + py3-bcrypt \ + py3-dateutil \ + py3-docutils \ + py3-flask \ + py3-frozendict \ + py3-greenlet \ + py3-magic \ + py3-mypy-extensions \ + py3-psutil \ + py3-redis \ + py3-requests \ + py3-rsa \ + py3-sqlalchemy \ + py3-tornado \ + py3-typing-extensions \ + py3-tz \ + py3-websocket-client \ + py3-websockets \ + py3-wheel \ + py3-yaml \ + py3-zeroconf \ + redis -FROM python:3.11-alpine - -RUN mkdir -p /install /app -COPY . /install -RUN apk add --update --no-cache redis -RUN apk add --update --no-cache --virtual build-base g++ rust linux-headers -RUN pip install -U pip -RUN cd /install && pip install . -RUN apk del build-base g++ rust linux-headers +RUN cd /install && pip install --no-cache-dir . +RUN cd / && rm -rf /install EXPOSE 8008 VOLUME /app/config VOLUME /app/workdir -CMD python -m platypush --start-redis --config-file /app/config/config.yaml --workdir /app/workdir +CMD platypush --start-redis --config-file /app/config/config.yaml --workdir /app/workdir