{ "id": "forgejo", "name": "Forgejo", "description": "Self-hosted Git service (web UI + git over SSH) backed by the homelab PostgreSQL.", "version": "11.0.1", "category": "development", "tags": ["git", "forgejo", "vcs", "self-hosted", "codeberg"], "author": "Forgejo contributors", "license": "MIT", "homepage": "https://forgejo.org/", "documentation": "https://forgejo.org/docs/latest/", "dependsOn": ["postgres"], "compose": { "image": "codeberg.org/forgejo/forgejo:11", "container_name": "forgejo", "restart": "unless-stopped", "environment": [ "FORGEJO__database__TYPE=postgres", "FORGEJO__database__HOST=homelab-postgres:5432", "FORGEJO__database__NAME=${PG_DB}", "FORGEJO__database__USER=${PG_USER}", "FORGEJO__database__PASSWD=${PG_PASSWORD}", "FORGEJO__server__ROOT_URL=${FORGEJO_ROOT_URL}", "FORGEJO__server__SSH_DOMAIN=${FORGEJO_SSH_DOMAIN}", "FORGEJO__server__SSH_PORT=2222", "FORGEJO__service__DISABLE_REGISTRATION=true", "TZ=${TZ}" ], "ports": [ "10.0.0.5:3000:3000", "10.0.0.5:2222:22" ], "volumes": [ "forgejo_data:/data", "/etc/timezone:/etc/timezone:ro", "/etc/localtime:/etc/localtime:ro" ], "networks": ["homelab"] }, "volumes": { "forgejo_data": {} }, "networks": { "homelab": { "external": true } }, "env": [ { "name": "PG_USER", "label": "Postgres user", "default": "homelab" }, { "name": "PG_DB", "label": "Postgres database", "default": "forgejo" }, { "name": "PG_PASSWORD", "label": "Postgres password", "description": "Must match the postgres service. Pass --env PG_PASSWORD=", "secret": true, "required": true }, { "name": "TZ", "label": "Timezone", "default": "UTC" }, { "name": "FORGEJO_ROOT_URL", "label": "Root URL", "default": "https://git.ezequielcf.dev/", "description": "Public URL served by nginx-proxy-manager (proxy host git.ezequielcf.dev -> forgejo:3000)" }, { "name": "FORGEJO_SSH_DOMAIN", "label": "SSH domain", "default": "git.ezequielcf.dev", "description": "Host used for git over SSH (port 2222)" } ], "notes": "Web UI at https://git.ezequielcf.dev (via nginx-proxy-manager -> forgejo:3000); LAN-only fallback http://10.0.0.5:3000. Git over SSH: ssh://git@git.ezequielcf.dev:2222//.git (LAN; forward router port 2222 to 10.0.0.5:2222 for remote SSH git). Registration disabled (users via Authelia SSO later). Repos live in the forgejo_data volume; the database in pg_data (postgres service)." }