update Dockerfile and supervisord configuration to use Python 3.11 slim-bookworm and uv
This commit is contained in:
parent
fe23e35670
commit
a24970e514
3 changed files with 18 additions and 21 deletions
21
Dockerfile
21
Dockerfile
|
|
@ -1,9 +1,13 @@
|
||||||
# Use an official Python runtime as a base image
|
# Use Python 3.11 slim image as base
|
||||||
FROM python:3.11.7-slim-bullseye
|
FROM python:3.11-slim-bookworm
|
||||||
|
|
||||||
|
# Install uv using the official method
|
||||||
|
COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/
|
||||||
|
|
||||||
|
|
||||||
# Install system dependencies required for building certain Python packages
|
# Install system dependencies required for building certain Python packages
|
||||||
RUN apt-get update && apt-get upgrade -y && apt-get install -y \
|
RUN apt-get update && apt-get upgrade -y && apt-get install -y \
|
||||||
gcc \
|
gcc git \
|
||||||
libmagic-dev \
|
libmagic-dev \
|
||||||
ffmpeg \
|
ffmpeg \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
@ -11,16 +15,11 @@ RUN apt-get update && apt-get upgrade -y && apt-get install -y \
|
||||||
# Set the working directory in the container to /app
|
# Set the working directory in the container to /app
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
RUN pip install poetry --no-cache-dir
|
|
||||||
RUN poetry self add poetry-plugin-dotenv
|
|
||||||
RUN poetry config virtualenvs.create false
|
|
||||||
|
|
||||||
COPY pyproject.toml poetry.lock /app/
|
|
||||||
RUN poetry install --only main
|
|
||||||
|
|
||||||
COPY . /app
|
COPY . /app
|
||||||
|
|
||||||
|
RUN uv sync
|
||||||
EXPOSE 8502
|
EXPOSE 8502
|
||||||
|
|
||||||
RUN mkdir -p /app/data
|
RUN mkdir -p /app/data
|
||||||
|
|
||||||
CMD ["poetry", "run", "streamlit", "run", "app_home.py"]
|
CMD ["uv", "run", "streamlit", "run", "app_home.py"]
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,9 @@
|
||||||
# Use an official Python runtime as a base image
|
# Use Python 3.11 slim image as base
|
||||||
FROM python:3.11.7-slim-bullseye
|
FROM python:3.11-slim-bookworm
|
||||||
|
|
||||||
|
# Install uv using the official method
|
||||||
|
COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/
|
||||||
|
|
||||||
|
|
||||||
# Install system dependencies required for building certain Python packages
|
# Install system dependencies required for building certain Python packages
|
||||||
RUN apt-get update && apt-get upgrade -y && apt-get install -y \
|
RUN apt-get update && apt-get upgrade -y && apt-get install -y \
|
||||||
|
|
@ -13,14 +17,8 @@ RUN curl --proto '=https' --tlsv1.2 -sSf https://install.surrealdb.com | sh
|
||||||
# Set the working directory in the container to /app
|
# Set the working directory in the container to /app
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
COPY pyproject.toml poetry.lock /app/
|
|
||||||
RUN pip install poetry --no-cache-dir
|
|
||||||
RUN poetry self add poetry-plugin-dotenv
|
|
||||||
RUN poetry config virtualenvs.create false
|
|
||||||
|
|
||||||
RUN poetry install --only main
|
|
||||||
|
|
||||||
COPY . /app
|
COPY . /app
|
||||||
|
RUN uv sync
|
||||||
|
|
||||||
# Create supervisor configuration directory
|
# Create supervisor configuration directory
|
||||||
RUN mkdir -p /etc/supervisor/conf.d
|
RUN mkdir -p /etc/supervisor/conf.d
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@ stderr_logfile_maxbytes=0
|
||||||
autorestart=true
|
autorestart=true
|
||||||
|
|
||||||
[program:streamlit]
|
[program:streamlit]
|
||||||
command=poetry run streamlit run app_home.py
|
command=uv run streamlit run app_home.py
|
||||||
stdout_logfile=/dev/stdout
|
stdout_logfile=/dev/stdout
|
||||||
stdout_logfile_maxbytes=0
|
stdout_logfile_maxbytes=0
|
||||||
stderr_logfile=/dev/stderr
|
stderr_logfile=/dev/stderr
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue