version: '3.8' services: postgres: image: postgres:16 container_name: gitea-postgres restart: unless-stopped environment: POSTGRES_DB: gitea POSTGRES_USER: gitea POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} volumes: - ./postgres:/var/lib/postgresql/data networks: - gitea-network healthcheck: test: ["CMD-SHELL", "pg_isready -U gitea"] interval: 10s timeout: 5s retries: 5 # minio: # image: minio/minio:RELEASE.2025-09-07T16-13-09Z-cpuv1 # container_name: gitea-minio # restart: unless-stopped # command: server /data --console-address ":9001" # environment: # MINIO_ROOT_USER: gitea # MINIO_ROOT_PASSWORD: ${MINIO_ROOT_PASSWORD} # volumes: # - ./minio:/data # networks: # - gitea-network # healthcheck: # test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"] # interval: 30s # timeout: 20s # retries: 3 gitea: image: gitea/gitea:1.25 container_name: gitea-server restart: unless-stopped depends_on: postgres: condition: service_healthy #minio: # condition: service_healthy environment: - GITEA__database__DB_TYPE=postgres - GITEA__database__HOST=postgres:5432 - GITEA__database__NAME=gitea - GITEA__database__USER=gitea - GITEA__database__PASSWD=${POSTGRES_PASSWORD} - GITEA__server__DOMAIN=gitea.home.hrajfrisbee.cz - GITEA__server__SSH_DOMAIN=gitea.home.hrajfrisbee.cz - GITEA__server__ROOT_URL=https://gitea.home.hrajfrisbee.cz - GITEA__security__SECRET_KEY=${GITEA_SECRET_KEY} - GITEA__security__INTERNAL_TOKEN=${INTERNAL_TOKEN} - GITEA__mailer__ENABLED=true - GITEA__mailer__PROTOCOL=smtps - GITEA__mailer__SMTP_ADDR=smtp.gmail.com - GITEA__mailer__SMTP_PORT=465 - GITEA__mailer__USER=kacerr.cz@gmail.com - GITEA__mailer__PASSWD=${GMAIL_GITEA_APP_PASSWORD} - GITEA__mailer__FROM=kacerr.cz+gitea@gmail.com - GITEA__packages__ENABLED=true #- GITEA__storage__STORAGE_TYPE=minio #- GITEA__storage__MINIO_ENDPOINT=minio:9000 #- GITEA__storage__MINIO_ACCESS_KEY_ID=gitea #- GITEA__storage__MINIO_SECRET_ACCESS_KEY=${MINIO_ROOT_PASSWORD} #- GITEA__storage__MINIO_BUCKET=gitea #- GITEA__storage__MINIO_USE_SSL=false #- GITEA__lfs__STORAGE_TYPE=minio #- GITEA__packages__STORAGE_TYPE=minio - GITEA__actions__ENABLED=true volumes: - ./data:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ports: - "3000:3000" - "2222:22" networks: - gitea-network gitea-runner: image: gitea/act_runner:nightly container_name: gitea-runner restart: unless-stopped depends_on: - gitea environment: GITEA_INSTANCE_URL: https://gitea.home.hrajfrisbee.cz/ GITEA_RUNNER_REGISTRATION_TOKEN: ${RUNNER_TOKEN} volumes: - ./runner-data:/data - /var/run/docker.sock:/var/run/docker.sock networks: - gitea-network # caddy: # image: caddy:2.7-alpine # container_name: gitea-caddy # restart: unless-stopped # ports: # - "80:80" # - "443:443" # volumes: # - ./Caddyfile:/etc/caddy/Caddyfile # - ./caddy-data:/data # - ./caddy-config:/config # networks: # - gitea-network networks: gitea-network: driver: bridge volumes: postgres-data: #minio-data: gitea-data: #caddy-data: #caddy-config: