diff --git a/stacks/gitea.yml b/stacks/gitea.yml index af1720b..fc83675 100644 --- a/stacks/gitea.yml +++ b/stacks/gitea.yml @@ -1,63 +1,70 @@ version: '3' services: - app: - # Latest contains a development version - image: 'gitea/gitea:1.15.8' - - deploy: - mode: 'replicated' - replicas: 1 - placement: - constraints: - - 'node.labels.class==gitea' - labels: - - 'traefik.enable=true' - - 'traefik.http.routers.gitea.rule=Host(`git.rustybever.be`)' - - 'traefik.http.routers.gitea.tls=true' - - 'traefik.http.routers.gitea.tls.certresolver=letsEncrypt' - - 'traefik.http.services.gitea.loadbalancer.server.port=3000' - - environment: - - 'DB_TYPE=postgres' - - 'DB_HOST=db:5432' - - 'DB_NAME=gitea' - - 'DB_USER=gitea' - - 'DB_PASSWD=gitea' - - 'LFS_START_SERVER=true' - - 'DISABLE_REGISTRATION=true' - networks: - - 'default' - - 'public' - ports: - - '22:22' - volumes: - - 'data:/data' - - 'repos:/data/git/repositories' - - 'lfs:/data/git/lfs' - - '/etc/timezone:/etc/timezone:ro' - - '/etc/localtime:/etc/localtime:ro' + app: + # Latest contains a development version + image: 'gitea/gitea:1.15.8' - db: - image: 'postgres:14.1-alpine' - - deploy: - mode: 'replicated' - replicas: 1 - placement: - constraints: - - 'node.labels.class==gitea' + deploy: + mode: 'replicated' + replicas: 1 + placement: + constraints: + - 'node.labels.class==gitea' + labels: + - 'traefik.enable=true' + - 'traefik.http.routers.gitea.rule=Host(`git.rustybever.be`)' + - 'traefik.http.routers.gitea.tls=true' + - 'traefik.http.routers.gitea.tls.certresolver=letsEncrypt' + - 'traefik.http.services.gitea.loadbalancer.server.port=3000' - environment: - - 'POSTGRES_USER=gitea' - - 'POSTGRES_PASSWORD=gitea' - - 'POSTGRES_DB=gitea' - volumes: - - 'db-data:/var/lib/postgresql/data' + environment: + - 'DB_TYPE=postgres' + - 'DB_HOST=db:5432' + - 'DB_NAME=gitea' + - 'DB_USER=gitea' + - 'DB_PASSWD=gitea' + - 'LFS_START_SERVER=true' + - 'DISABLE_REGISTRATION=true' + networks: + - 'default' + - 'public' + ports: + - '22:22' + volumes: + - 'data:/data' + - 'repos:/data/git/repositories' + - 'lfs:/data/git/lfs' + - '/etc/timezone:/etc/timezone:ro' + - '/etc/localtime:/etc/localtime:ro' + + db: + image: 'postgres:14.1-alpine' + + deploy: + mode: 'replicated' + replicas: 1 + placement: + constraints: + - 'node.labels.class==gitea' + + healthcheck: + test: pg_isready + interval: 30s + timeout: 5s + retries: 3 + start_period: 15s + + environment: + - 'POSTGRES_USER=gitea' + - 'POSTGRES_PASSWORD=gitea' + - 'POSTGRES_DB=gitea' + volumes: + - 'db-data:/var/lib/postgresql/data' networks: - public: - external: true + public: + external: true volumes: data: