| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- services:
- {{ service_name | default('gitea') }}:
- image: docker.io/gitea/gitea:1.24.5
- container_name: {{ container_name | default('gitea-server') }}
- env_file:
- - .env.gitea
- {% if ports_enabled %}
- ports:
- - "{{ ports_http | default(3000) }}:3000"
- - "{{ ports_ssh | default(2221) }}:22"
- {% endif %}
- {% if network_enabled %}
- networks:
- - {{ network_name | default('bridge') }}
- {% endif %}
- {% if traefik_enabled %}
- labels:
- - traefik.enable=true
- - traefik.http.services.{{ service_name | default('gitea') }}.loadbalancer.server.port=3000
- - traefik.http.services.{{ service_name | default('gitea') }}.loadbalancer.server.scheme=http
- - traefik.http.routers.{{ service_name | default('gitea') }}-http.rule=Host(`{{ traefik_host }}`)
- - traefik.http.routers.{{ service_name | default('gitea') }}-http.entrypoints={{ traefik_entrypoint | default('web') }}
- {% if traefik_tls_enabled %}
- - traefik.http.routers.{{ service_name | default('gitea') }}-https.rule=Host(`{{ traefik_host }}`)
- - traefik.http.routers.{{ service_name | default('gitea') }}-https.entrypoints={{ traefik_tls_entrypoint | default('websecure') }}
- - traefik.http.routers.{{ service_name | default('gitea') }}-https.tls=true
- - traefik.http.routers.{{ service_name | default('gitea') }}-https.tls.certresolver={{ traefik_tls_certresolver }}
- {% endif %}
- {% endif %}
- volumes:
- - gitea-data:/data
- - /etc/timezone:/etc/timezone:ro
- - /etc/localtime:/etc/localtime:ro
- depends_on:
- - {{ service_name | default('gitea') }}-postgres
- restart: {{ restart_policy | default('unless-stopped') }}
- {% if not database_external %}
- {{ service_name | default('gitea') }}-postgres:
- image: docker.io/library/postgres:17.6
- container_name: {{ service_name | default('gitea') }}-db
- env_file:
- - .env.postgres
- healthcheck:
- test: ["CMD-SHELL", "pg_isready -U {{ database_user | default('gitea') }}"]
- start_period: 30s
- interval: 10s
- timeout: 10s
- retries: 5
- volumes:
- - gitea-db:/var/lib/postgresql/data
- {% if network_enabled %}
- networks:
- - {{ network_name | default('bridge') }}
- {% endif %}
- restart: {{ restart_policy | default('unless-stopped') }}
- {% endif %}
- volumes:
- gitea-data:
- driver: local
- {% if not database_external %}
- gitea-db:
- driver: local
- {% endif %}
- {% if network_enabled %}
- networks:
- {{ network_name | default('bridge') }}:
- {% if network_external %}
- external: true
- {% endif %}
- {% endif %}
|