Files
helix-proxy/docker-compose.yml
T
s1d3sw1ped_bot a6e0693409
Format / gofmt (push) Successful in 14s
CI / Build (push) Successful in 22s
CI / Go Tests (push) Successful in 57s
Format / gofmt (pull_request) Successful in 14s
CI / Build (pull_request) Successful in 26s
CI / Go Tests (pull_request) Successful in 58s
docker: Align compose healthcheck with admin port
Set compose ADMIN_PORT/PROXY_* to 81/80/443 so healthcheck and EXPOSE match;
document binary defaults vs Docker ports in README.

Fixes #10
2026-09-02 11:31:39 -05:00

37 lines
1.3 KiB
YAML

services:
app:
build: .
image: helix-proxy:dev
restart: unless-stopped
ports:
- "80:80"
# Admin binds 127.0.0.1; do not publish :81 on untrusted networks.
# - "81:81"
- "443:443"
volumes:
- ./data:/app/data
# user: "0:0" # required when using PUID/PGID != built-in to allow binary to chown+drop
# working_dir: /app # binary uses CWD for relative data/ + data/www/
environment:
- ADMIN_PORT=81
- PROXY_HTTP_PORT=80
- PROXY_HTTPS_PORT=443
# ADMIN_HOST defaults to 127.0.0.1 (healthcheck hits 127.0.0.1:81)
# - JWT_SECRET= # optional; otherwise a random secret is stored in data/.jwt_secret
# - DATA_DIR=/app/data
# - WWW_DIR=/app/data/www
# - PUID=1000
# - PGID=1000
# - DISABLE_IPV6=1
# # PUID_NO_DROP=1 # if using low ports (80/443) + PUID: chown as root but skip drop (stay root for bind; default drop runs as PUID after, requires high ports or NET_BIND_SERVICE cap)
# To use optional SQL backend instead of default yaml:
# - DB_TYPE=postgres
# - DB_POSTGRES_HOST=db
# ... and add a db service
healthcheck:
test: ["CMD", "wget", "-qO-", "http://127.0.0.1:81/api"]
interval: 30s
timeout: 5s
retries: 3
start_period: 10s