diff --git a/forgejo/docker-compose.yml b/forgejo/docker-compose.yml new file mode 100644 index 0000000..a53f0ae --- /dev/null +++ b/forgejo/docker-compose.yml @@ -0,0 +1,66 @@ +name: git + +networks: + forgejo: + external: false + web: + external: true + ldap: + external: true + driver: bridge + +services: + server: + image: codeberg.org/forgejo/forgejo:8.0.1 + container_name: forgejo + environment: + - USER_UID=1000 + - USER_GID=1000 + - FORGEJO__database__DB_TYPE=postgres + - FORGEJO__database__HOST=db:5432 + - FORGEJO__database__NAME=forgejo + - FORGEJO__database__USER=forgejo + - FORGEJO__database__PASSWD= + restart: always + networks: + - forgejo + - web + - ldap + volumes: + - ./forgejo:/data + - /etc/timezone:/etc/timezone:ro + - /etc/localtime:/etc/localtime:ro + ports: + - "3010:3000" + - "222:22" + depends_on: + - db + labels: + - "traefik.enable=true" + - "traefik.http.routers.git.rule=Host(``)" + - "traefik.http.routers.git.entrypoints=websecure" + - "traefik.http.routers.git.tls=true" + - "traefik.http.routers.git.tls.certResolver=letsencrypt" + - "traefik.http.services.git.loadbalancer.server.port=3000" + - "traefik.docker.network=web" + - homepage.group=Infra + - homepage.name=Git + - homepage.icon=forgejo.png + - homepage.href=https: + - homepage.description=Git Forgejo + + + db: + image: postgres:14 + container_name: forgejo_db + restart: always + environment: + - POSTGRES_USER=forgejo + - POSTGRES_PASSWORD= + - POSTGRES_DB=forgejo + ports: + - "5435:5432" + networks: + - forgejo + volumes: + - ./postgres:/var/lib/postgresql/data