diff --git a/makefile b/makefile index 4487557..c2864bc 100644 --- a/makefile +++ b/makefile @@ -215,4 +215,12 @@ deploy-homeassistant: pull set +a ;\ docker stack deploy --compose-file ./swarm/homeassistant.yml homeassistant ;\ } +deploy-gitea: pull + { \ + echo "Deploying the gitea stack..." ;\ + set -a ;\ + . ./swarm/.env ;\ + set +a ;\ + docker stack deploy --compose-file ./swarm/gitea.yml gitea ;\ + } # git submodule update --init --recursive \ No newline at end of file diff --git a/swarm/gitea.yml b/swarm/gitea.yml new file mode 100644 index 0000000..5fd743e --- /dev/null +++ b/swarm/gitea.yml @@ -0,0 +1,36 @@ +networks: + net: + driver: overlay + attachable: true + traefik-public: + external: true + +services: + gitea: + image: docker.gitea.com/gitea/gitea:latest + environment: + USER_UID: 1000 + USER_GID: 1000 + GITEA__database__DB_TYPE: "postgres" + GITEA__database__HOST: ${DATABASE__HOSTNAME} + GITEA__database__NAME: "gitea" + GITEA__database__USER: ${POSTGRES_USER} + GITEA__database__PASSWD: ${POSTGRES_PASSWORD} + expose: + - 3000 + restart: unless-stopped + volumes: + - /var/data/gitea_data:/data + networks: + - net + - traefik-public + deploy: + labels: + - traefik.enable=true + - traefik.swarm.network=traefik-public + - traefik.constraint-label=traefik-public + - traefik.http.routers.gitea.entrypoints=https + - traefik.http.routers.gitea.rule=Host(`git.${DOMAIN}`) + - traefik.http.routers.gitea.tls.certresolver=le + - traefik.http.routers.gitea.service=gitea_service + - traefik.http.services.gitea_service.loadbalancer.server.port=3000 \ No newline at end of file