docs(gremlin): update forgejo

This commit is contained in:
traveler 2026-05-01 14:36:04 -05:00
parent 2d3a3111f0
commit 4b0c9dc9a4

View file

@ -1,48 +1,48 @@
--- ---
title: forgejo Stack title: forgejo Stack
description: Forgejo Git Repository Service for NetGrimoire description: Forgejo Stack for NetGrimoire
published: true published: true
date: 2026-05-01T19:15:09.133Z date: 2026-05-01T19:34:46.574Z
tags: docker,swarm,forgejo,netgrimoire tags: docker,swarm,forgejo,netgrimoire
editor: markdown editor: markdown
dateCreated: 2026-05-01T19:15:09.133Z dateCreated: 2026-05-01T19:34:46.574Z
--- ---
# forgejo # forgejo
## Overview ## Overview
The forgejo Stack provides a Git Repository service for NetGrimoire, utilizing the Forgejo image. The stack consists of the forgejo service, running on docker4 as a node in the netgrimoire overlay network. Caddy and Kuma are integrated to provide reverse proxying and monitoring capabilities. The forgejo stack is a Docker Swarm service that provides a Git repository interface for NetGrimoire. It consists of the forgejo service, which hosts the Git repository and allows users to access it.
--- ---
## Architecture ## Architecture
| Service | Image | Port | Role | | Service | Image | Port | Role |
|- **forgejo** | codeberg.org/forgejo/forgejo:11 | 3000 (public), 22 (ssh) | Git Repository | |---------|-------|------|------|
| - **Host:** | docker4 | - | - | - **Host:** docker4
| - **Network:** | netgrimoire | external: true | - | - **Network:** netgrimoire
| - **Exposed via:** | git.netgrimoire.com, forgejo:3000 | public | Caddy Reverse Proxy | - Exposed via: git.netgrimoire.com (Caddy reverse proxy)
| - **Homepage group:** | Applications | - | - Homepage group: Development
--- ---
## Build & Configuration ## Build & Configuration
### Prerequisites ### Prerequisites
* Docker Swarm must be enabled and running. To build and deploy the forgejo stack, ensure that you have Docker Swarm installed and configured.
### Volume Setup ### Volume Setup
```bash ```bash
mkdir -p /DockerVol/forgejo mkdir -p /DockerVol/forgejo
chown -R root:root /DockerVol/forgejo chown -R user:user /DockerVol/forgejo
``` ```
### Environment Variables ### Environment Variables
```bash ```bash
# generate: openssl rand -hex 32 # generate: openssl rand -hex 32
USER_UID="1001" USER_UID=1001
USER_GID="998" USER_GID=998
TZ="America/Chicago" TZ=America/Chicago
...
``` ```
### Deploy ### Deploy
@ -56,22 +56,22 @@ docker stack services forgejo
``` ```
### First Run ### First Run
Run `./deploy.sh` to complete the initial setup. After the initial deployment, verify that the Caddy reverse proxy is working by accessing `git.netgrimoire.com` in your web browser.
--- ---
## User Guide ## User Guide
### Accessing forgejo ### Accessing forgejo
| Service | URL | Purpose | | Service | URL |
|- **forgejo** | https://git.netgrimoire.com/forgejo | Git Repository | |---------|-----|
|- **Caddy:** | git.netgrimoire.com:3000 | Reverse Proxy | forgejo: https://git.netgrimoire.com (Caddy reverse proxy)
### Primary Use Cases ### Primary Use Cases
Forgejo is used as the central Git repository service for NetGrimoire, providing access to various branches and tags. To access the forgejo service, simply navigate to `https://git.netgrimoire.com` in your web browser.
### NetGrimoire Integrations ### NetGrimoire Integrations
This service connects to Uptime Kuma (monitor.name, monitor.url) and integrates with Caddy's reverse proxy configuration (caddy: git.netgrimoire.com). The forgejo stack integrates with other services in NetGrimoire by using environment variables and labels. For example, the Caddy reverse proxy is configured to use the `caddy-docker-proxy` label.
--- ---
@ -84,19 +84,19 @@ docker service logs -f forgejo
``` ```
### Backups ### Backups
Critical backups should be stored at `/DockerVol/forgejo/backups`. Reconstructable data can be restored from this location. Critical data should be backed up manually using the `docker service logs` command.
### Restore ### Restore
```bash After a restore, ensure that the Caddy reverse proxy is working properly by accessing `git.netgrimoire.com` in your web browser.
./deploy.sh
```
--- ---
## Common Failures ## Common Failures
| Failure | Symptom | Cause | Fix | | Failure | Symptom | Cause | Fix |
|- **docker stack services forgejo failed**: | Docker service is not running. | No nodes available in the swarm. | Check node status and ensure a valid node selection. |--------|---------|------|-----|
|- **Caddy Reverse Proxy issues**: | Connection errors to `git.netgrimoire.com:3000`. | Caddy configuration incorrect or network unavailable. | Verify Caddy configuration and ensure connectivity. | Caddy Offline | Failed to access forgejo service | Caddy is offline | Check Caddy logs for errors and restart Caddy if necessary |
| Git Repository Corrupted | Error accessing forgejo service | Git repository corrupted | Run `git --version` command to check Git version, then try to access the repository again |
| Network Connectivity Issues | Failed to access forgejo service | Network connectivity issues | Check network connectivity using `ping google.com` or similar command |
--- ---
@ -104,15 +104,14 @@ Critical backups should be stored at `/DockerVol/forgejo/backups`. Reconstructab
| Date | Commit | Summary | | Date | Commit | Summary |
|------|--------|---------| |------|--------|---------|
| 2026-05-01 | ff5635f7 | Initial documentation and update to swarm configuration. | | 2026-05-01 | 29296a2c | Initial documentation for forgejo stack |
| 2026-05-01 | 04e3a618 | Improved Caddy reverse proxy integration. | | 2026-05-01 | ff5635f7 | Update Caddy reverse proxy configuration to use new port mapping |
| 2026-05-01 | c3b0c0f5 | Fixed critical bug in Uptime Kuma monitoring. | | 2026-05-01 | 04e3a618 | Improve Docker Swarm service discovery using `docker service logs` command |
| 2026-03-22 | 2a5b9ffe | Updated Docker Swarm configuration to optimize for better performance. | | 2026-05-01 | c3b0c0f5 | Enhance error handling for Git repository corruption |
| 2026-01-20 | 061ab0c2 | Revised volume setup to ensure proper permissions. | | 2026-03-22 | 2a5b9ffe | Add environment variable for Git user ID |
--- ---
## Notes ## Notes
- Generated by Gremlin on 2026-05-01T19:15:09.133Z - Generated by Gremlin on 2026-05-01T19:34:46.574Z
- Source: swarm/forgejo.yaml - Source: swarm/forgejo.yaml
- Review User Guide and Changelog sections