Files
silverlinux-infra/docs/AI_CONTEXT.md
T
2026-06-22 15:55:41 +03:30

2.5 KiB

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
  • Microsoft SQL Server 2022 Express
  • Gitea
  • OpenProject
  • Jitsi Meet
  • Portainer
  • Nginx Proxy Manager
  • BaGet
  • Gitea Actions Runner (silverlinux-runner)
  • DbGate

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)

dbgate.silveressence.net -> DbGate (through Nginx Proxy Manager)

Secrets

Secrets are stored in:

/srv/secrets/company.env

Never hardcode credentials.

Always use env_file.

Docker Networks

proxy internal

MSSQL is attached only to internal. DbGate is attached to both internal and proxy.

Authentication

Gitea:

  • Local accounts
  • OpenID disabled
  • Google OAuth planned
  • GitHub OAuth planned

OpenProject:

  • 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.

Databases

PostgreSQL 17 and Microsoft SQL Server 2022 Express are operational.

MSSQL uses hostname mssql on the internal Docker network. Port 1433 is not published.

DbGate provides authenticated HTTPS administration for MSSQL and PostgreSQL at https://dbgate.silveressence.net.

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
  • MSSQL Express deployed alongside PostgreSQL
  • DbGate selected as the database administration portal