k3s/documentation/user-facing/productivity-and-creation/forgejo.md
2026-07-23 18:39:10 -04:00

59 lines
2.3 KiB
Markdown

# Forgejo — Git Hosting & Code Collaboration
**Forgejo** is a lightweight, self-hosted git hosting platform (a fork of Gitea). It provides repositories, pull requests, issue tracking, and a package registry — all accessible via your browser or standard git clients.
## Access
- **Web UI:** <https://weaver.mynest.love>
- **SSH:** `ssh -p 22 git@ssh.weaver.mynest.love`
- **Package Registry:** <https://weaver.mynest.love/packages>
- **Internal (home network):** <http://forgejo.k3s.home.nest:3000>
## Features
- Git repository hosting with full history and branching support
- Pull requests with code review workflows
- Issue tracking and project boards
- Built-in CI/CD via Forgejo Actions (GitHub Actions-compatible)
- Container and package registry for sharing binaries and Docker images
- Wiki pages per repository
## Getting Started
1. Open <https://weaver.mynest.love> in your browser.
2. Click **Sign In** and choose **Sign in with The Nest**.
3. Create a new repository or clone an existing one:
```bash
git clone ssh://git@ssh.weaver.mynest.love:22/username/repo.git
```
4. Push your first commit and start collaborating.
## SSH Configuration
HTTP Git is disabled for security — use SSH only. Add your public key to your Forgejo account under **Settings → SSH Keys**.
Example `~/.ssh/config` entry:
## Package Registry
Forgejo includes a package registry for sharing binaries, Docker images, and other artifacts:
- **Docker:** `docker pull weaver.mynest.love/nest/your-image:tag`
- **npm/go/python:** Configure your package manager to authenticate with your Forgejo token (generate one under **Settings → Applications → Generate Token**).
## Tips
- **Two-factor auth:** While passkeys handle SSO, enable 2FA in Forgejo settings for an extra layer of security on the git server itself.
- **Actions:** Use `.forgejo/workflows/` in your repo to define CI pipelines (compatible with GitHub Actions syntax).
- **Webhooks:** Set up webhooks to trigger external services when you push code.
## Related Services
- [Semaphore](https://semaphore.k3s.home.nest) — Ansible automation UI for infrastructure management
- [Keycloak](../technical/security-and-identity.md) — Powers SSO and group-based access control
---
*TODO: Add screenshot of Forgejo repository view with a sample project.*