105 lines
2.6 KiB
YAML
105 lines
2.6 KiB
YAML
services:
|
|
forgejo:
|
|
image: codeberg.org/forgejo/forgejo:7
|
|
container_name: forgejo
|
|
environment:
|
|
- USER_UID=1000
|
|
- USER_GID=1000
|
|
- FORGEJO__database__DB_TYPE=postgres
|
|
- FORGEJO__database__HOST=db:5432
|
|
- FORGEJO__database__NAME=forgejo
|
|
- FORGEJO__database__USER=forgejo
|
|
- FORGEJO__database__PASSWD=${DB_PASSWORD}
|
|
- FORGEJO__cache__ADAPTER=redis
|
|
- FORGEJO__cache__HOST=redis://redis:6379/0
|
|
- FORGEJO__session__PROVIDER=redis
|
|
- FORGEJO__session__PROVIDER_CONFIG=redis://redis:6379/1
|
|
- FORGEJO__actions__ENABLED=true
|
|
- FORGEJO__service__SHOW_REGISTRATION_BUTTON=false
|
|
- FORGEJO__server__SSH_PORT=${SSH_PORT}
|
|
- FORGEJO__server__SSH_DOMAIN=${SSH_DOMAIN}
|
|
- FORGEJO__openid__ENABLE_OPENID_SIGNIN=false
|
|
- FORGEJO__openid__ENABLE_OPENID_SIGNUP=false
|
|
volumes:
|
|
- forgejo-data:/data
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
ports:
|
|
- "3000:3000"
|
|
- "222:22"
|
|
depends_on:
|
|
- db
|
|
- redis
|
|
networks:
|
|
- forgejo-network
|
|
restart: unless-stopped
|
|
|
|
# runner:
|
|
# image: code.forgejo.org/forgejo/runner:3.3.0
|
|
# container_name: forgejo-runner
|
|
# environment:
|
|
# - DOCKER_HOST=tcp://docker-in-docker:2376
|
|
# - DOCKER_TLS_VERIFY=1
|
|
# - DOCKER_CERT_PATH=/certs/client
|
|
# volumes:
|
|
# - runner-data:/data
|
|
# - docker-certs:/certs/client:ro
|
|
# depends_on:
|
|
# - forgejo
|
|
# - docker-in-docker
|
|
# networks:
|
|
# - forgejo-network
|
|
# restart: unless-stopped
|
|
# command: >
|
|
# sh -c "
|
|
# while ! nc -z forgejo 3000; do sleep 1; done;
|
|
# forgejo-runner daemon
|
|
# "
|
|
|
|
docker-in-docker:
|
|
image: docker:dind
|
|
container_name: forgejo-dind
|
|
privileged: true
|
|
environment:
|
|
- DOCKER_TLS_CERTDIR=/certs
|
|
volumes:
|
|
- docker-certs:/certs
|
|
- dind-data:/var/lib/docker
|
|
networks:
|
|
- forgejo-network
|
|
restart: unless-stopped
|
|
|
|
db:
|
|
image: postgres:15-alpine
|
|
container_name: forgejo-db
|
|
environment:
|
|
- POSTGRES_USER=forgejo
|
|
- POSTGRES_PASSWORD=${DB_PASSWORD}
|
|
- POSTGRES_DB=forgejo
|
|
volumes:
|
|
- postgres-data:/var/lib/postgresql/data
|
|
networks:
|
|
- forgejo-network
|
|
restart: unless-stopped
|
|
|
|
redis:
|
|
image: redis:7-alpine
|
|
container_name: forgejo-redis
|
|
volumes:
|
|
- redis-data:/data
|
|
networks:
|
|
- forgejo-network
|
|
restart: unless-stopped
|
|
|
|
volumes:
|
|
forgejo-data:
|
|
runner-data:
|
|
docker-certs:
|
|
dind-data:
|
|
postgres-data:
|
|
redis-data:
|
|
|
|
networks:
|
|
forgejo-network:
|
|
driver: bridge
|