34 lines
944 B
Docker
34 lines
944 B
Docker
FROM python:3.13-slim
|
|
|
|
WORKDIR /app/code
|
|
|
|
ENV PYTHONDONTWRITEBYTECODE=1
|
|
ENV PYTHONUNBUFFERED=1
|
|
ENV PORT=8000
|
|
|
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
ca-certificates \
|
|
sqlite3 \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
RUN groupadd --gid 1000 cloudron \
|
|
&& useradd --uid 1000 --gid 1000 --create-home --home-dir /home/cloudron cloudron
|
|
|
|
COPY requirements.txt /app/code/
|
|
RUN pip install --no-cache-dir -r requirements.txt gunicorn
|
|
|
|
COPY . /app/code
|
|
|
|
# Lokale Daten für den ersten Start sichern und danach /app/code/data auf /app/data zeigen lassen
|
|
RUN if [ -d /app/code/data ]; then mv /app/code/data /app/bootstrap-data; else mkdir -p /app/bootstrap-data; fi \
|
|
&& ln -s /app/data /app/code/data \
|
|
&& chmod +x /app/code/start.sh \
|
|
&& chown -R cloudron:cloudron /app/code /app/bootstrap-data \
|
|
&& chown -h cloudron:cloudron /app/code/data
|
|
|
|
USER cloudron
|
|
|
|
EXPOSE 8000
|
|
|
|
CMD ["/app/code/start.sh"]
|