updating the documentation of the SilverLinux Insftracture

This commit is contained in:
2026-06-21 13:35:59 +03:30
parent b43f2b790e
commit a8e23d3036
33 changed files with 3894 additions and 153 deletions
+275
View File
@@ -0,0 +1,275 @@
# Server Information
## Overview
SilverLinux is the primary self-hosted infrastructure server for Silver Solutions.
The server hosts source control, project management, collaboration, communication and supporting infrastructure services.
---
## Host Information
| Property | Value |
| ---------------- | ----------------------- |
| Hostname | silverlinux |
| Provider | OVH |
| Operating System | Ubuntu Server 24.04 LTS |
| Public IP | 51.255.83.140 |
---
## Hardware
| Resource | Value |
| -------- | -------------------- |
| CPU | Intel Xeon-D 1520 |
| Memory | 32 GB RAM |
| Storage | 2 × 480 GB SSD RAID1 |
---
## Installed Software
### Docker
Purpose:
* Container hosting
* Service isolation
* Deployment management
### Docker Compose
Purpose:
* Multi-container application deployment
* Service management
### PostgreSQL
Purpose:
* Shared database platform
### Fail2Ban
Purpose:
* SSH brute-force protection
### UFW
Purpose:
* Firewall management
---
## Docker Networks
### internal
Purpose:
Private communication between services.
Examples:
* Gitea → PostgreSQL
* OpenProject → PostgreSQL
---
### proxy
Purpose:
Public-facing services behind Nginx Proxy Manager.
Examples:
* Gitea
* OpenProject
* Jitsi Meet
* Portainer
---
## Running Services
* PostgreSQL
* Gitea
* OpenProject
* Jitsi Meet
* Portainer
* Nginx Proxy Manager
---
## Directory Structure
### Docker Services
```text
/srv/docker
```
Contains:
```text
/srv/docker/gitea
/srv/docker/openproject
/srv/docker/postgres
/srv/docker/jitsi
/srv/docker/portainer
/srv/docker/nginx-proxy-manager
```
---
### Shared Secrets
```text
/srv/secrets/company.env
```
Contains:
* SMTP credentials
* Database passwords
* Application secrets
* Future OAuth credentials
---
### Backups
```text
/srv/backups
```
Suggested structure:
```text
/srv/backups/daily
/srv/backups/weekly
/srv/backups/monthly
```
---
## Service Data Locations
### Gitea
```text
/srv/docker/gitea/data
```
---
### OpenProject
```text
/srv/docker/openproject/assets
```
---
### PostgreSQL
```text
/srv/docker/postgres/data
```
---
### Nginx Proxy Manager
```text
/srv/docker/nginx-proxy-manager/data
/srv/docker/nginx-proxy-manager/letsencrypt
```
---
### Jitsi
```text
/srv/docker/jitsi
```
---
## SSH Access
Primary user:
```text
ubuntu
```
Authentication:
* SSH key authentication
* Root login disabled
---
## Security
Implemented:
* UFW enabled
* Fail2Ban enabled
* Shared secrets stored outside Git repositories
* SSL certificates managed through Nginx Proxy Manager
* PostgreSQL not exposed publicly
* OpenID disabled in Gitea
---
## Email
Sender address:
```text
noreply@silveressence.net
```
SMTP credentials are stored in:
```text
/srv/secrets/company.env
```
Used by:
* Gitea
* OpenProject
---
## Disaster Recovery
This repository should contain enough information to rebuild the SilverLinux environment from scratch.
Recovery priorities:
1. Restore secrets
2. Restore PostgreSQL
3. Restore Nginx Proxy Manager
4. Restore Gitea
5. Restore OpenProject
6. Restore remaining services
---
## Related Documentation
* docs/secrets.md
* docs/security.md
* docs/backups.md
* docs/services.md
* docs/domains.md