Dockerfile now builds client

This commit is contained in:
Donkie
2023-05-10 21:26:24 +02:00
parent 0269518175
commit 639a800efa
2 changed files with 18 additions and 12 deletions

View File

@@ -1,4 +1,11 @@
FROM python:3.11-alpine
FROM node:16-alpine as client-builder
COPY ./client /client
WORKDIR /client
RUN npm install
RUN npm run build
FROM python:3.11-alpine as runner
# Add local user so we don't run as root
RUN adduser -D app
@@ -7,10 +14,17 @@ USER app
ENV PATH="/home/app/.local/bin:${PATH}"
# Copy and install app
COPY --chown=app:app ./ /home/app/spoolman/
COPY --chown=app:app spoolman /home/app/spoolman/spoolman
COPY --chown=app:app pyproject.toml /home/app/spoolman/
COPY --chown=app:app requirements.txt /home/app/spoolman/
COPY --chown=app:app README.md /home/app/spoolman/
WORKDIR /home/app/spoolman
RUN pip install --user .
# Copy built client
COPY --chown=app:app --from=client-builder /client/dist /home/app/spoolman/client/dist
# Run command
EXPOSE 8000
CMD ["uvicorn", "spoolman.main:app", "--host", "0.0.0.0", "--port", "8000"]