54 lines
1.3 KiB
YAML
54 lines
1.3 KiB
YAML
version: "3"
|
|
|
|
services:
|
|
server:
|
|
image: gitea/gitea:1.21.4
|
|
container_name: gitea
|
|
restart: always
|
|
networks:
|
|
- gitea
|
|
- backend
|
|
env_file:
|
|
- stack.env
|
|
volumes:
|
|
- ${GITEA_DIR}:/data
|
|
- /etc/timezone:/etc/timezone:ro
|
|
- /etc/localtime:/etc/localtime:ro
|
|
ports:
|
|
- ${GITEA_PORT_HTTP}:3000
|
|
- ${GITEA_PORT_SSH}:22
|
|
depends_on:
|
|
- db
|
|
labels:
|
|
- traefik.enable=true
|
|
|
|
# HTTP redirection to HTTPS
|
|
- traefik.http.routers.gitea.entrypoints=web
|
|
- traefik.http.routers.gitea.rule=Host(`${GITEA_URL}`)
|
|
- traefik.http.middlewares.gitea-https-redirect.redirectscheme.scheme=https
|
|
- traefik.http.routers.gitea.middlewares=gitea-https-redirect
|
|
|
|
# HTTPS config
|
|
- traefik.http.routers.gitea-secure.entrypoints=websecure
|
|
- traefik.http.routers.gitea-secure.rule=Host(`${GITEA_URL}`)
|
|
- traefik.http.routers.gitea-secure.tls=true
|
|
- traefik.http.routers.gitea-secure.tls.certresolver=myresolver
|
|
- traefik.http.services.gitea-secure.loadbalancer.server.port=3000
|
|
|
|
- traefik.docker.network=proxy
|
|
|
|
db:
|
|
image: postgres:14
|
|
restart: always
|
|
env_file:
|
|
- stack.env
|
|
networks:
|
|
- gitea
|
|
volumes:
|
|
- ${GITEA_DB_DIR}:/var/lib/postgresql/data
|
|
|
|
networks:
|
|
gitea:
|
|
external: false
|
|
backend:
|
|
external: true |