46 lines
1.6 KiB
Markdown
46 lines
1.6 KiB
Markdown
# External Gitea
|
|
|
|
Gitea is bootstrap infrastructure, not a Kubernetes workload.
|
|
|
|
`lab.sh deploy-gitea` copies `docker-compose.yml` to the Debian host and runs
|
|
Gitea as an always-on Docker Compose service. The current default stores data on
|
|
the HP laptop NVMe under `/data/homelab-gitea/data`; Docker root is also
|
|
expected to live on the `/data` storage path.
|
|
|
|
Defaults:
|
|
|
|
- host: `192.168.100.73`
|
|
- user: `jv`
|
|
- install dir: `/data/homelab-gitea`
|
|
- HTTP port: `3000`
|
|
- SSH port: `32222`
|
|
- public root URL: `https://lab2025.duckdns.org/git/`
|
|
|
|
Kubernetes consumes Git from the Debian bare GitOps mirror at
|
|
`/home/jv/git-server/my-homelab-configs.git`. Gitea is the human-facing Git
|
|
service and remains available when the cluster is destroyed.
|
|
|
|
`./lab.sh bootstrap-gitea-repo` creates or validates the public Gitea repository,
|
|
adds the Debian host deploy key when needed, and points the Debian checkout's
|
|
`gitea` remote at:
|
|
|
|
```text
|
|
ssh://git@192.168.100.73:32222/jv/my-homelab-configs.git
|
|
```
|
|
|
|
Argo CD does not read from the Gitea SSH port. It reads from the
|
|
Debian bare GitOps mirror through `gitops_repo_url`, normally:
|
|
|
|
```text
|
|
ssh://jv@192.168.100.73/home/jv/git-server/my-homelab-configs.git
|
|
```
|
|
|
|
The platform bootstrap registers that repo secret and updates
|
|
`argocd-ssh-known-hosts-cm`. If Argo CD reports `knownhosts: key is unknown`,
|
|
refresh the Debian host key in that ConfigMap and restart `argocd-repo-server`.
|
|
|
|
Backups are installed on the Debian host by `lab.sh deploy-gitea` and
|
|
`lab.sh backup-gitea`. The timer runs `gitea dump` inside the Gitea container,
|
|
copies the archive to Debian, and stores it under
|
|
`/home/jv/backups/gitea`.
|