netgescon-day0/scripts/ops/git-stack/docker-compose.yml

76 lines
2.3 KiB
YAML
Executable File

version: '3.9'
services:
forgejo:
image: codeberg.org/forgejo/forgejo:9
container_name: netgescon_forgejo
restart: unless-stopped
depends_on:
- forgejo_db
environment:
- USER_UID=1000
- USER_GID=1000
- TZ=${TZ}
- FORGEJO__database__DB_TYPE=postgres
- FORGEJO__database__HOST=forgejo_db:5432
- FORGEJO__database__NAME=${FORGEJO_DB_NAME}
- FORGEJO__database__USER=${FORGEJO_DB_USER}
- FORGEJO__database__PASSWD=${FORGEJO_DB_PASS}
- FORGEJO__security__SECRET_KEY=${FORGEJO_SECRET_KEY}
- FORGEJO__security__INTERNAL_TOKEN=${FORGEJO_INTERNAL_TOKEN}
- FORGEJO__server__DOMAIN=${GIT_DOMAIN}
- FORGEJO__server__ROOT_URL=https://${GIT_DOMAIN}/
- FORGEJO__server__SSH_DOMAIN=${SSH_DOMAIN}
- FORGEJO__server__SSH_PORT=2222
- FORGEJO__service__DISABLE_REGISTRATION=true
- FORGEJO__service__REQUIRE_SIGNIN_VIEW=true
- FORGEJO__service__ENABLE_NOTIFY_MAIL=true
- FORGEJO__mailer__ENABLED=true
- FORGEJO__mailer__SMTP_ADDR=${SMTP_HOST}
- FORGEJO__mailer__SMTP_PORT=${SMTP_PORT}
- FORGEJO__mailer__USER=${SMTP_USER}
- FORGEJO__mailer__PASSWD=${SMTP_PASS}
- FORGEJO__mailer__FROM=${SMTP_FROM}
ports:
- '3000:3000'
- '2222:22'
volumes:
- ./data/forgejo:/data
forgejo_db:
image: postgres:16
container_name: netgescon_forgejo_db
restart: unless-stopped
environment:
- POSTGRES_DB=${FORGEJO_DB_NAME}
- POSTGRES_USER=${FORGEJO_DB_USER}
- POSTGRES_PASSWORD=${FORGEJO_DB_PASS}
- TZ=${TZ}
volumes:
- ./data/postgres:/var/lib/postgresql/data
minio:
image: minio/minio:latest
container_name: netgescon_minio
restart: unless-stopped
command: server /data --console-address ':9001'
environment:
- MINIO_ROOT_USER=${MINIO_ROOT_USER}
- MINIO_ROOT_PASSWORD=${MINIO_ROOT_PASSWORD}
ports:
- '9000:9000'
- '9001:9001'
volumes:
- ./data/minio:/data
# Placeholder per API update/licensing separata
# Collegala al tuo Laravel updates server o a microservizio dedicato.
update_api_placeholder:
image: nginx:alpine
container_name: netgescon_update_api_placeholder
restart: unless-stopped
volumes:
- ./placeholder-nginx.conf:/etc/nginx/conf.d/default.conf:ro
ports:
- '8088:80'