Skip to content

Commit fbbd343

Browse files
committed
Dockerfile: user "nobody" now owns the app directory
1 parent 3d0a759 commit fbbd343

File tree

1 file changed

+2
-39
lines changed

1 file changed

+2
-39
lines changed
Lines changed: 2 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# syntax=docker/dockerfile:1
22

3-
FROM python:3.14-slim AS builder
3+
FROM python:{{cookiecutter.python_version}}-slim AS builder
44
LABEL maintainer="André Felipe Dias <[email protected]>"
55

66
RUN DEBIAN_FRONTEND=noninteractive apt-get update && \
@@ -22,56 +22,19 @@ RUN uv sync --locked --no-install-project --no-dev
2222

2323
# ---------------------------------------------------------
2424

25-
FROM python:3.14-slim AS final
25+
FROM python:{{cookiecutter.python_version}}-slim AS final
2626

2727
RUN DEBIAN_FRONTEND=noninteractive apt-get update && \
2828
apt-get install -y --no-install-recommends libpq-dev && \
2929
apt-get clean && \
3030
rm -rf /var/lib/apt/lists/*
3131

32-
WORKDIR /app
33-
COPY --from=builder --chown=nobody:nogroup /app/.venv ./.venv
34-
ENV PATH=/app/.venv/bin:${PATH}
35-
36-
COPY --chown=nobody:nogroup --exclude=pyproject.toml --exclude=uv.lock . ./
37-
3832
USER nobody
39-
40-
EXPOSE 5000
41-
42-
CMD ["./entrypoint.sh"]
43-
44-
# ---------------------------------------------------------
45-
46-
FROM python:{{cookiecutter.python_version}}-slim AS builder
47-
LABEL maintainer="{{cookiecutter.author}} <{{cookiecutter.email}}>"
48-
49-
RUN DEBIAN_FRONTEND=noninteractive apt-get update && \
50-
apt-get install -y --no-install-recommends build-essential libffi-dev libxml2-dev \
51-
libxslt-dev curl && \
52-
apt-get clean && \
53-
rm -rf /var/lib/apt/lists/*
54-
55-
COPY --from=ghcr.io/astral-sh/uv:0.9.8 /uv /uvx /bin/
56-
57-
ENV UV_COMPILE_BYTECODE=1 UV_LINK_MODE=copy UV_PYTHON_DOWNLOADS=0
58-
59-
WORKDIR /app
60-
61-
COPY pyproject.toml uv.lock ./
62-
RUN uv sync --locked --no-install-project --no-dev
63-
64-
# ---------------------------------------------------------
65-
66-
FROM python:{{cookiecutter.python_version}}-slim AS final
67-
6833
WORKDIR /app
6934
COPY --from=builder --chown=nobody:nogroup /app/.venv ./.venv
7035
ENV PATH=/app/.venv/bin:${PATH}
71-
7236
COPY --chown=nobody:nogroup --exclude=pyproject.toml --exclude=uv.lock . ./
7337

74-
USER nobody
7538
EXPOSE 5000
7639

7740
CMD ["./entrypoint.sh"]

0 commit comments

Comments
 (0)