- Public site (Home/Artists/Exhibitions/News/About/Contact) with EN/KO/JA i18n - Admin panel with login, CRUD, image upload, multilingual editing - Exhibition slider/lightbox view - FastAPI + MongoDB backend, JWT auth - Docker Compose deployment, behind nginx at jimi.yakenator.io
25 lines
683 B
Docker
25 lines
683 B
Docker
FROM python:3.11-slim
|
|
|
|
WORKDIR /app
|
|
|
|
COPY backend/requirements.txt /app/requirements.txt
|
|
RUN pip install --no-cache-dir -r /app/requirements.txt
|
|
|
|
# Backend code
|
|
COPY backend/ /app/backend/
|
|
|
|
# Static frontend baked into the image so the image is self-contained in prod.
|
|
# Local dev can still override via a volume mount if desired.
|
|
COPY index.html artist.html artists.html exhibition.html exhibitions.html news.html about.html contact.html /static/
|
|
COPY assets /static/assets
|
|
COPY admin /static/admin
|
|
|
|
ENV PYTHONDONTWRITEBYTECODE=1 \
|
|
PYTHONUNBUFFERED=1 \
|
|
STATIC_DIR=/static
|
|
|
|
EXPOSE 8000
|
|
|
|
WORKDIR /app/backend
|
|
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]
|