Files
core2026_docker/.env.example
T
Hide_D bd03ce9e58 fix(runtime): 릴리스 빌드 PID 여유를 확보
여러 profile PM2 프로세스가 실행 중에도 Gateway 릴리스 빌드가 thread 생성 한도에 걸리지 않도록 운영 runtime 기본 PID 상한을 512로 높이고 문서와 예제를 맞춘다.
2026-08-17 14:48:16 +00:00

88 lines
3.3 KiB
Bash

# Public endpoint assigned to this stack. Caddy obtains TLS certificates for
# DOMAIN automatically when it terminates TLS itself.
DOMAIN=game.example.com
PUBLIC_SCHEME=https
ACME_EMAIL=admin@example.com
# Set http://DOMAIN when an external reverse proxy terminates TLS.
CADDY_SITE_ADDRESS=
HTTP_PORT=80
HTTPS_PORT=443
# Current local E2E ingress example (do not use dev-sam2026.hided.net here):
# DOMAIN=dev-sam-e2e.hided.net
# PUBLIC_SCHEME=https
# CADDY_SITE_ADDRESS=http://dev-sam-e2e.hided.net
# HTTP_PORT=14999
# HTTPS_PORT=15099
# Runtime hard limits. Keep swap equal to memory so the container cannot consume host swap.
RUNTIME_MEMORY_LIMIT=4g
RUNTIME_MEMORY_SWAP_LIMIT=4g
RUNTIME_CPU_LIMIT=4
RUNTIME_PIDS_LIMIT=512
# Bound Node/Rolldown build parallelism inside the runtime container.
RUNTIME_NODE_OPTIONS=--max-old-space-size=1536
# Optional turn-daemon-only heap. Raise the runtime memory hard limit first.
TURN_DAEMON_NODE_OPTIONS=--max-old-space-size=1536
RUNTIME_RAYON_NUM_THREADS=1
# Optional smoke-only limits used with compose.smoke.yaml (maximum supported defaults shown).
# SMOKE_RUNTIME_MEMORY_LIMIT=4g
# SMOKE_RUNTIME_MEMORY_SWAP_LIMIT=4g
# SMOKE_RUNTIME_CPU_LIMIT=4
# SMOKE_RUNTIME_PIDS_LIMIT=256
# Core2026 source. A public HTTPS URL needs no extra credential.
CORE_REPOSITORY_URL=https://github.com/your-org/core2026.git
CORE_BOOTSTRAP_REF=main
# Optional private repository authentication. Keep only one mode enabled.
# HTTPS mode uses a read-only token through GIT_ASKPASS and never embeds it in the URL.
CORE_REPOSITORY_USERNAME=
CORE_REPOSITORY_TOKEN=
# SSH mode accepts base64-encoded deploy key and known_hosts contents.
CORE_SSH_PRIVATE_KEY_BASE64=
CORE_SSH_KNOWN_HOSTS_BASE64=
# Development bind override (used only with compose.dev.yaml).
# CORE_DEV_PATH=../core2026
# DEV_UID=1000
# DEV_GID=1000
# DEV_RUNTIME_MEMORY_LIMIT=4g
# DEV_RUNTIME_MEMORY_SWAP_LIMIT=4g
# DEV_RUNTIME_CPU_LIMIT=4
# DEV_RUNTIME_PIDS_LIMIT=256
# Persistent services. Use long random values; do not commit .env.
POSTGRES_DB=sammo
POSTGRES_USER=sammo
POSTGRES_PASSWORD=replace-with-a-long-random-database-password
REDIS_PASSWORD=replace-with-a-long-random-redis-password
GAME_TOKEN_SECRET=replace-with-at-least-32-random-bytes
GATEWAY_BOOTSTRAP_TOKEN=replace-with-a-separate-random-bootstrap-token
# The first startup creates this superuser only when the user table is empty.
INITIAL_ADMIN_USERNAME=admin
INITIAL_ADMIN_PASSWORD=replace-with-a-long-random-admin-password
INITIAL_ADMIN_DISPLAY_NAME=Administrator
# Kakao Developers app values. Register https://DOMAIN/gateway/oauth/callback.
KAKAO_REST_KEY=replace-with-kakao-rest-api-key
KAKAO_ADMIN_KEY=
# Account policy and optional compatibility secret.
GATEWAY_LOCAL_REGISTRATION_ENABLED=true
GATEWAY_ADMIN_LOCAL_ACCOUNT_ENABLED=true
GATEWAY_LOCAL_ACCOUNT_GRACE_DAYS=7
GATEWAY_LEGACY_PASSWORD_GLOBAL_SALT=
# Shared image service. The two secret files must contain the values configured
# for the core2026 caller on the image server and must not be committed.
IMAGE_SERVICE_URL=https://sam-image.hided.net
IMAGE_PUBLIC_URL=https://sam-image.hided.net
IMAGE_UPLOAD_CORE2026_SECRET_FILE=./secrets/image_upload_core2026_secret
IMAGE_SYNC_CORE2026_SECRET_FILE=./secrets/image_sync_core2026_secret
# Initial stopped profile inventory. Each deployment can choose its own branch in the Admin GUI.
BOOTSTRAP_PROFILES=gateway,che,kwe,pwe,twe,nya,pya,hwe
TZ=Asia/Seoul