89 lines
2.6 KiB
YAML
89 lines
2.6 KiB
YAML
networks:
|
|
proxy:
|
|
external: true
|
|
gitea:
|
|
name: gitea
|
|
external: false
|
|
|
|
volumes:
|
|
gitea:
|
|
name: gitea
|
|
gitea-db:
|
|
name: gitea-db
|
|
gitea-runner:
|
|
name: gitea-runner
|
|
|
|
services:
|
|
gitea:
|
|
image: gitea/gitea
|
|
container_name: gitea
|
|
hostname: gitea
|
|
environment:
|
|
USER_UID: 1000
|
|
USER_GID: 1000
|
|
GITEA__database__DB_TYPE: postgres
|
|
GITEA__database__HOST: gitea-db:5432
|
|
GITEA__database__NAME: ${DB_NAME}
|
|
GITEA__database__USER: ${DB_USER}
|
|
GITEA__database__PASSWD: ${DB_PASS}
|
|
GITEA__server__START_SSH_SERVER: true
|
|
GITEA__server__SSH_PORT: 22
|
|
GITEA__server__SSH_LISTEN_PORT: 222
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- gitea-db
|
|
volumes:
|
|
- gitea:/data
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
networks:
|
|
- proxy
|
|
- gitea
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.git.entrypoints=web"
|
|
- "traefik.http.routers.git.rule=Host(`gitea.steinle-computer.de`)"
|
|
- "traefik.http.routers.git.middlewares=git"
|
|
- "traefik.http.middlewares.git.redirectscheme.scheme=https"
|
|
- "traefik.http.routers.git-secure.entrypoints=websecure"
|
|
- "traefik.http.routers.git-secure.rule=Host(`gitea.steinle-computer.de`)"
|
|
- "traefik.http.routers.git-secure.service=git-secure"
|
|
- "traefik.http.routers.git-secure.tls=true"
|
|
- "traefik.http.routers.git-secure.tls.certresolver=cs"
|
|
- "traefik.http.routers.git-secure.tls.domains[0].main=gitea.steinle-computer.de"
|
|
- "traefik.http.services.git-secure.loadbalancer.server.port=3000"
|
|
- "traefik.tcp.routers.git-ssh.entrypoints=ssh"
|
|
- "traefik.tcp.routers.git-ssh.rule=HostSNI(`*`)"
|
|
- "traefik.tcp.routers.git-ssh.service=git-ssh"
|
|
- "traefik.tcp.services.git-ssh.loadbalancer.server.port=222"
|
|
|
|
gitea-db:
|
|
image: postgres:17-alpine
|
|
container_name: gitea-db
|
|
hostname: gitea-db
|
|
restart: unless-stopped
|
|
volumes:
|
|
- gitea-db:/var/lib/postgresql/data
|
|
networks:
|
|
- gitea
|
|
environment:
|
|
POSTGRES_PASSWORD: ${DB_PASS}
|
|
POSTGRES_USER: ${DB_USER}
|
|
POSTGRES_DB: ${DB_NAME}
|
|
healthcheck:
|
|
test: [ "CMD-SHELL", "pg_isready -U $DB_USER" ]
|
|
|
|
runner:
|
|
image: gitea/act_runner
|
|
restart: always
|
|
depends_on:
|
|
- gitea
|
|
volumes:
|
|
- gitea-runner:/data
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
environment:
|
|
- GITEA_INSTANCE_URL=https://gitea.steinle-computer.de
|
|
- GITEA_RUNNER_REGISTRATION_TOKEN=jMMDhDpMzlmtN2pXzVj6qcAdlGEpDb8dmzbfmdm8
|
|
networks:
|
|
- gitea
|