Files
eleith 7dc28888c2
ci/woodpecker/push/web-proxy Pipeline was successful
ci/woodpecker/push/web Pipeline was successful
[web.proxy] add healthcheck in dockerfile
2026-06-05 16:06:05 -07:00

33 lines
1.3 KiB
Docker

# syntax=docker/dockerfile:1
# Build context: monorepo root. Build with one of:
# docker build -f packages/web/proxy/Dockerfile --target dev .
# docker build -f packages/web/proxy/Dockerfile --target prod . (default)
FROM nginxinc/nginx-unprivileged:1.27.4-alpine AS base
USER root
RUN rm -f /etc/nginx/conf.d/default.conf && \
chmod 777 /etc/nginx/conf.d && \
mkdir -p /etc/nginx/templates && \
chmod -R 777 /etc/nginx/templates
COPY --chmod=664 packages/web/proxy/templates/default.conf.template /etc/nginx/templates/default.conf.template
HEALTHCHECK --interval=5s --timeout=3s --retries=3 --start-period=30s \
CMD wget -q -O /dev/null http://127.0.0.1:8080/api/health || exit 1
USER 101
# --- dev ---------------------------------------------------------------------
FROM base AS dev
ENV LUZZLE_PROXY_EXPLORER_UPSTREAM=luzzle-dev-web:5173
ENV LUZZLE_PROXY_LSP_UPSTREAM=luzzle-dev-lsp:9001
ENV LUZZLE_DEV=true
ENV LUZZLE_PROXY_ACCESS_LOG=/tmp/logs/access.log
ENV LUZZLE_PROXY_ERROR_LOG=/tmp/logs/error.log
# --- prod (default) ----------------------------------------------------------
FROM base AS prod
ENV LUZZLE_PROXY_EXPLORER_UPSTREAM=luzzle-web:3000
ENV LUZZLE_PROXY_LSP_UPSTREAM=luzzle-lsp:9001
ENV LUZZLE_DEV=false
ENV LUZZLE_PROXY_ACCESS_LOG=/dev/stdout
ENV LUZZLE_PROXY_ERROR_LOG=/dev/stderr