All checks were successful
CI / Backend tests (push) Successful in 30s
CI / Frontend lint (push) Successful in 33s
CI / Frontend build (push) Successful in 25s
CI / Frontend unit tests (push) Successful in 1m6s
CI / Playwright e2e (push) Successful in 1m43s
Docker / build-and-push (push) Successful in 2m30s
39 lines
1.6 KiB
YAML
39 lines
1.6 KiB
YAML
services:
|
|
life-towers:
|
|
# Default to a registry image so `docker compose pull && up -d` deploys
|
|
# a new build. Override LIFE_TOWERS_IMAGE in your `.env` to pin a tag,
|
|
# or set it to e.g. `life-towers:local` and uncomment `build: .` for
|
|
# local builds.
|
|
image: ${LIFE_TOWERS_IMAGE:-life-towers:local}
|
|
# For a local production build, uncomment the block below. BASE_HREF must
|
|
# match the sub-path the app is served under (the published image is built
|
|
# with /towers/ by .forgejo/workflows/docker.yml).
|
|
# build:
|
|
# context: .
|
|
# args:
|
|
# BASE_HREF: /towers/
|
|
pull_policy: ${LIFE_TOWERS_PULL_POLICY:-missing}
|
|
ports:
|
|
- "${LIFE_TOWERS_PORT:-8000}:8000"
|
|
volumes:
|
|
# Named volume inherits ownership from the image (UID 1000 / appuser).
|
|
# To switch to a bind mount for easy host-side backups, replace with:
|
|
# - ./data:/data
|
|
# and first run: `mkdir -p data && sudo chown 1000:1000 data`.
|
|
- life-towers-data:/data
|
|
environment:
|
|
LIFE_TOWERS_ALLOWED_ORIGIN: "${LIFE_TOWERS_ALLOWED_ORIGIN:-}"
|
|
# Absolute public URL of the deployment, used to render correct canonical
|
|
# / Open Graph / Twitter tags. Required when served under a sub-path,
|
|
# because nginx strips the prefix before proxying so the backend can't
|
|
# otherwise infer it. Override in .env for a different host/path.
|
|
LIFE_TOWERS_PUBLIC_URL: "${LIFE_TOWERS_PUBLIC_URL:-https://schmelczer.dev/towers/}"
|
|
restart: unless-stopped
|
|
logging:
|
|
driver: json-file
|
|
options:
|
|
max-size: "10m"
|
|
max-file: "3"
|
|
|
|
volumes:
|
|
life-towers-data:
|