Files
pk-lab-server/compose.yml
T
codex-bot 0a930f227b
Verify and deploy API / verify-deploy (push) Failing after 1m47s
Keep API private on shared Docker network
2026-09-18 22:52:25 +08:00

56 lines
1.5 KiB
YAML

services:
postgres:
image: postgres:16-bookworm
restart: unless-stopped
environment:
POSTGRES_DB: pk_lab
POSTGRES_USER: pk_lab
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:?Set POSTGRES_PASSWORD}
volumes:
- postgres-data:/var/lib/postgresql/data
healthcheck:
test: [CMD-SHELL, "pg_isready -U pk_lab -d pk_lab"]
interval: 5s
timeout: 5s
retries: 30
security_opt: [no-new-privileges:true]
mem_limit: 512m
api:
image: ${DEPLOY_IMAGE:?Set DEPLOY_IMAGE}
restart: unless-stopped
read_only: true
cap_drop: [ALL]
security_opt: [no-new-privileges:true]
tmpfs: [/tmp:rw,noexec,nosuid,size=64m]
mem_limit: 512m
pids_limit: 128
expose:
- "8000"
environment:
DATABASE_URL: postgresql+psycopg://pk_lab:${POSTGRES_PASSWORD:?Set POSTGRES_PASSWORD}@postgres:5432/pk_lab
PUBLIC_BASE_URL: ${PUBLIC_BASE_URL:-}
CORS_ORIGINS: ${CORS_ORIGINS:-http://localhost:3000,http://localhost:3002}
TEST_AUTH_ENABLED: ${TEST_AUTH_ENABLED:-false}
XHS_HUB_APP_ID: ${XHS_HUB_APP_ID:-}
XHS_HUB_APP_SECRET: ${XHS_HUB_APP_SECRET:-}
XHS_RICE_APP_ID: ${XHS_RICE_APP_ID:-}
XHS_RICE_APP_SECRET: ${XHS_RICE_APP_SECRET:-}
depends_on:
postgres:
condition: service_healthy
networks:
default:
public:
aliases:
- pk-lab-api
volumes:
postgres-data:
name: pk-lab-postgres-data
networks:
public:
name: pk-lab-public
external: true