FROM node:20-alpine AS email_builder RUN npm install -g mjml RUN mkdir -p /app/templates/html COPY ./src/emails/templates/mjml /app/templates RUN mjml /app/templates/* -o /app/templates/html/ FROM python:3.13-alpine AS app # protoze xfs uzivatel ma id=33 # RUN deluser xfs # uzivatel www-data v alpine neexistuje RUN delgroup www-data && addgroup -g 33 -S www-data && adduser -u 33 -D -S -G www-data www-data RUN apk update && \ apk add --no-cache tzdata mariadb-client mariadb-dev && \ pip install --upgrade pip COPY requirements.txt /app/requirements.txt COPY --from=email_builder /app/templates/html/ /app/src/email/templates/html/ # required packages for pip (becasue of yarl lib) ENV INSTALL_PACKAGES build-base linux-headers RUN apk add --no-cache $INSTALL_PACKAGES RUN pip install --no-cache-dir -r /app/requirements.txt RUN apk del $INSTALL_PACKAGES RUN mkdir /app/upload -p COPY . /app WORKDIR /app CMD [ "gunicorn", "src.asgi:app", "--config=/app/config/gunicorn.py" ]