31 lines
1.4 KiB
YAML
31 lines
1.4 KiB
YAML
# Local development only. The production compose file intentionally does not publish port 8000.
|
|
|
|
services:
|
|
app:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
container_name: ${APP_CONTAINER_NAME:-linklog-app-local}
|
|
ports:
|
|
- "${APP_PORT:-8000}:8000"
|
|
volumes:
|
|
- ./linklog_data:/app/backend/data
|
|
environment:
|
|
APP_ENV: ${APP_ENV:-development}
|
|
LINKLOG_APP_NAME: ${LINKLOG_APP_NAME:-LinkLog}
|
|
LINKLOG_DATABASE_PATH: ${LINKLOG_DATABASE_PATH:-/app/backend/data/linklog.db}
|
|
LINKLOG_SECRET_KEY: ${LINKLOG_SECRET_KEY:?Set LINKLOG_SECRET_KEY in .env}
|
|
LINKLOG_DATA_ENCRYPTION_KEY: ${LINKLOG_DATA_ENCRYPTION_KEY:?Set LINKLOG_DATA_ENCRYPTION_KEY in .env}
|
|
LINKLOG_PUBLIC_URL: ${LINKLOG_PUBLIC_URL:-http://localhost:8000}
|
|
LINKLOG_TOKEN_EXPIRY_MINUTES: ${LINKLOG_TOKEN_EXPIRY_MINUTES:-15}
|
|
LINKLOG_REFRESH_TOKEN_EXPIRY_DAYS: ${LINKLOG_REFRESH_TOKEN_EXPIRY_DAYS:-30}
|
|
LINKLOG_LOG_LEVEL: ${LINKLOG_LOG_LEVEL:-DEBUG}
|
|
LINKLOG_TRACKING_PARAMS: ${LINKLOG_TRACKING_PARAMS:-}
|
|
restart: ${APP_RESTART_POLICY:-unless-stopped}
|
|
healthcheck:
|
|
test: ["CMD", "python", "-c", "from urllib.request import urlopen; urlopen('http://127.0.0.1:8000/health', timeout=3)"]
|
|
interval: ${APP_HEALTHCHECK_INTERVAL:-30s}
|
|
timeout: ${APP_HEALTHCHECK_TIMEOUT:-5s}
|
|
start_period: ${APP_HEALTHCHECK_START_PERIOD:-10s}
|
|
retries: ${APP_HEALTHCHECK_RETRIES:-3}
|