FROM python:3.14-alpine WORKDIR /app VOLUME [ "/data", "/etc/letsencrypt" ] ENV HTTP_PORT=80 ENV HTTPS_PORT=443 ENV HOST=localhost ENV DATA_DIR=/data ENV MAX_SIZE=20000000 ENV BIND=0.0.0.0 ENV CERTBOT_CONF=/etc/letsencrypt ENV CERTBOT_WWW=/data/.certbot ENV SELF_SIGNED_PATH=/data/.certificates RUN apk add --no-cache \ openssl \ certbot RUN PIP_ROOT_USER_ACTION=ignore python3 -m pip install uv COPY uv.lock pyproject.toml ./ COPY stapler/* ./stapler/ RUN uv pip install . --system ENTRYPOINT [ "stapler"]