56 lines
1.6 KiB
YAML
56 lines
1.6 KiB
YAML
# VEP P1 compose — pinned, extendable per phase. Internal network only.
|
|
# Postgres+pgvector not published to host. Caddy (host) proxies git.* and api.*.
|
|
services:
|
|
postgres:
|
|
image: pgvector/pgvector:0.7.0-pg16
|
|
environment:
|
|
POSTGRES_USER: ${PG_USER:-vep}
|
|
POSTGRES_PASSWORD: ${PG_PASS:-vep_dev_pass}
|
|
POSTGRES_DB: vep
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U ${PG_USER:-vep} -d vep"]
|
|
interval: 5s
|
|
timeout: 3s
|
|
retries: 10
|
|
volumes:
|
|
- pgdata:/var/lib/postgresql/data
|
|
- ./schema/init.sql:/docker-entrypoint-initdb.d/init.sql:ro
|
|
networks: [vep_net]
|
|
# NOT published to host — internal only.
|
|
|
|
app:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
environment:
|
|
DATABASE_URL: postgresql://${PG_USER:-vep}:${PG_PASS:-vep_dev_pass}@postgres:5432/vep
|
|
VEP_TENANT: t_default
|
|
depends_on:
|
|
postgres:
|
|
condition: service_healthy
|
|
ports:
|
|
- "127.0.0.1:8000:8000" # loopback only; Caddy proxies publicly
|
|
networks: [vep_net]
|
|
# NOT published — Caddy proxies localhost:8000.
|
|
|
|
forgejo:
|
|
image: codeberg.org/forgejo/forgejo:10.0.3
|
|
environment:
|
|
FORGEJO__database__DB_TYPE: sqlite3
|
|
FORGEJO__server__SSH_PORT: 22
|
|
FORGEJO__server__ROOT_URL: https://git.mangoopsdesign.com
|
|
FORGEJO__server__APP_DATA_PATH: /data
|
|
ports:
|
|
- "127.0.0.1:3000:3000" # loopback only; Caddy proxies publicly
|
|
- "2222:22" # host :2222 -> container ssh (avoids host :22)
|
|
volumes:
|
|
- forgejo_data:/data
|
|
networks: [vep_net]
|
|
|
|
networks:
|
|
vep_net:
|
|
driver: bridge
|
|
|
|
volumes:
|
|
pgdata:
|
|
forgejo_data:
|