optimize the dockerfile with security and shrinking the resulting docker image

This commit is contained in:
Tomislav Mikulin 2022-01-02 16:32:52 +01:00
parent 9235020999
commit 6f624ecb7b

View File

@ -1,22 +1,29 @@
FROM python:3.9 FROM python:3.9-slim-buster
RUN pip install -U pip \ ENV POETRY_VERSION=1.1.12
RUN useradd --create-home flashbot \
&& apt-get update \ && apt-get update \
&& curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python - && apt-get install -y --no-install-recommends build-essential libffi-dev libpq-dev gcc procps \
&& pip install poetry==$POETRY_VERSION \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
ENV PATH="${PATH}:/root/.poetry/bin" ENV PATH="${PATH}:/home/flashbot/.local/bin"
COPY ./pyproject.toml /app/pyproject.toml COPY --chown=flashbot ./pyproject.toml /app/pyproject.toml
COPY ./poetry.lock /app/poetry.lock COPY --chown=flashbot ./poetry.lock /app/poetry.lock
WORKDIR /app/ WORKDIR /app/
RUN poetry config virtualenvs.create false && \ USER flashbot
poetry install
COPY . /app RUN poetry config virtualenvs.create false \
&& poetry install
# easter eggs 😝 COPY --chown=flashbot . /app
RUN echo "PS1='🕵️:\[\033[1;36m\]\h \[\033[1;34m\]\W\[\033[0;35m\]\[\033[1;36m\]$ \[\033[0m\]'" >> ~/.bashrc
# easter eggs
RUN echo "PS1=' :\[\033[1;36m\]\h \[\033[1;34m\]\W\[\033[0;35m\]\[\033[1;36m\]$ \[\033[0m\]'" >> ~/.bashrc
ENTRYPOINT [ "poetry" ] ENTRYPOINT [ "poetry" ]
CMD [ "run", "python", "loop.py" ] CMD [ "run", "python", "loop.py" ]