MH0386 commited on
Commit
264f729
·
verified ·
1 Parent(s): e599bd0

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +15 -27
Dockerfile CHANGED
@@ -1,10 +1,16 @@
1
- FROM ghcr.io/astral-sh/uv:debian-slim AS builder
2
 
3
  # Enable bytecode compilation, Copy from the cache instead of linking since it's a mounted volume
4
  ENV UV_COMPILE_BYTECODE=1 \
5
  UV_LINK_MODE=copy \
6
- UV_CACHE_DIR=/root/.cache/uv \
7
- UV_PYTHON_PREFERENCE=only-managed
 
 
 
 
 
 
8
 
9
  # # skipcq: DOK-DL3008
10
  # RUN apt-get update && \
@@ -12,33 +18,15 @@ ENV UV_COMPILE_BYTECODE=1 \
12
  # apt-get clean && \
13
  # rm -rf /var/lib/apt/lists/*
14
 
15
- WORKDIR /app
16
-
17
- RUN --mount=type=cache,target=${UV_CACHE_DIR} \
18
- --mount=type=bind,source=uv.lock,target=uv.lock \
19
- --mount=type=bind,source=pyproject.toml,target=pyproject.toml \
20
- --mount=type=bind,source=.python-version,target=.python-version \
21
- uv sync --frozen --no-install-project --no-dev
22
-
23
- COPY . /app
24
 
25
- RUN --mount=type=cache,target=${UV_CACHE_DIR} \
26
- --mount=type=bind,source=uv.lock,target=uv.lock \
27
  --mount=type=bind,source=pyproject.toml,target=pyproject.toml \
28
  --mount=type=bind,source=.python-version,target=.python-version \
29
- uv sync --frozen --no-dev
 
30
 
31
- FROM debian:bookworm-slim AS production
32
-
33
- RUN groupadd vocalizr && \
34
- useradd --gid vocalizr --shell /bin/bash --create-home vocalizr
35
-
36
- WORKDIR /home/vocalizr/app
37
-
38
- COPY --from=builder --chown=vocalizr:vocalizr /app /home/vocalizr/app
39
-
40
- ENV PATH="/home/vocalizr/app/.venv/bin:$PATH" \
41
- GRADIO_SERVER_PORT=8080
42
 
43
  USER vocalizr
44
 
@@ -46,4 +34,4 @@ EXPOSE ${GRADIO_SERVER_PORT}
46
 
47
  ENTRYPOINT [ ]
48
 
49
- CMD ["/home/vocalizr/app/.venv/bin/python", "src/vocalizr"]
 
1
+ FROM ghcr.io/astral-sh/uv:debian-slim
2
 
3
  # Enable bytecode compilation, Copy from the cache instead of linking since it's a mounted volume
4
  ENV UV_COMPILE_BYTECODE=1 \
5
  UV_LINK_MODE=copy \
6
+ UV_NO_CACHE=1 \
7
+ UV_PYTHON_PREFERENCE=only-managed \
8
+ UV_SYSTEM_PYTHON=1 \
9
+ PATH="/home/vocalizr/app/.venv/bin:$PATH" \
10
+ GRADIO_SERVER_PORT=8080
11
+
12
+ RUN groupadd vocalizr && \
13
+ useradd --gid vocalizr --shell /bin/bash --create-home vocalizr
14
 
15
  # # skipcq: DOK-DL3008
16
  # RUN apt-get update && \
 
18
  # apt-get clean && \
19
  # rm -rf /var/lib/apt/lists/*
20
 
21
+ WORKDIR /home/vocalizr/app
 
 
 
 
 
 
 
 
22
 
23
+ RUN --mount=type=bind,source=uv.lock,target=uv.lock \
 
24
  --mount=type=bind,source=pyproject.toml,target=pyproject.toml \
25
  --mount=type=bind,source=.python-version,target=.python-version \
26
+ uv export --no-hashes --no-editable --no-dev -o requirements.txt;
27
+ uv pip install --system -r pyproject.toml
28
 
29
+ COPY --chown=vocalizr:vocalizr . /home/vocalizr/app
 
 
 
 
 
 
 
 
 
 
30
 
31
  USER vocalizr
32
 
 
34
 
35
  ENTRYPOINT [ ]
36
 
37
+ CMD ["python", "src/vocalizr"]