Files
silverlinux-infra/docs/AI_CONTEXT.md
T
2026-06-21 17:03:02 +03:30

97 lines
1.9 KiB
Markdown

# SilverLinux AI Context
## Purpose
SilverLinux is the primary self-hosted infrastructure server for Silver Solutions.
The goal is to host all development, collaboration, deployment and internal tooling.
## Server
Hostname: silverlinux
OS: Ubuntu Server 24.04 LTS
Provider: OVH
Public IP: 51.255.83.140
## Core Services
* PostgreSQL
* Gitea
* OpenProject
* Jitsi Meet
* Portainer
* Nginx Proxy Manager
* BaGet
* Gitea Actions Runner (`silverlinux-runner`)
## Domains
git.silveressence.net -> Gitea
team.silveressence.net -> OpenProject
meet.silveressence.net -> Jitsi
portainer.silveressence.net -> Portainer
nuget.silveressence.net -> BaGet (through Nginx Proxy Manager)
## Secrets
Secrets are stored in:
/srv/secrets/company.env
Never hardcode credentials.
Always use env_file.
## Docker Networks
proxy
internal
## Authentication
Gitea:
* Local accounts
## CI/CD
Gitea Actions is enabled globally.
The global self-hosted runner is operational at `/srv/docker/gitea-runner` with the name `silverlinux-runner`.
Silver 2.0 uses `.gitea/workflows/package.yml` to publish NuGet packages to BaGet when a push to `net-8-version` has a commit message containing `[Package]`.
The runner registration token is stored in `/srv/secrets/company.env`. The BaGet publishing key is stored as the repository Actions secret `BAGET_API_KEY`.
* OpenID disabled
* Google OAuth planned
* GitHub OAuth planned
OpenProject:
* Local accounts
## Documentation
Read all files in:
docs/
and the README.md of each service folder before making infrastructure recommendations.
## Important Decisions
* Plane.so removed
* OpenProject selected
* Centralized secrets implemented
* Nginx Proxy Manager selected
* PostgreSQL selected as shared database platform
* BaGet deployed at nuget.silveressence.net through Nginx Proxy Manager
* Gitea Actions and a global self-hosted runner selected for package publishing