feat: initial infra repo

- docker-services: 14 generic compose templates (portainer, npm, vaultwarden, gitea, jotty, nextcloud-aio, rustdesk, audiobookshelf, calibre-web, plex, erugo, jswiki, speedtest, watchtower)
- install-scripts: bash scripts for Ubuntu server bootstrap, docker, portainer, npm, backup, restore
- ansible: 4 playbooks (bootstrap, deploy-services, update-services, security-hardening) + roles skeleton
- hermes-install: Hermes CLI setup on macOS
- macos-setup: Brewfile + osx-defaults + fish-config
- home-nas-tools: metadata index for NAS projects (no binaries)
- docs: architecture, security, contributing
- README, LICENSE (MIT), .gitignore
This commit is contained in:
2026-08-01 16:25:58 +02:00
commit 444191d16d
73 changed files with 4032 additions and 0 deletions
+88
View File
@@ -0,0 +1,88 @@
# 🔧 mates — Home Infrastructure
> Sbírka šablon, skriptů a Ansible playbooků pro rychlé nasazení self-hostované infrastruktury.
> Veškerý obsah vychází z reálného běhu na serveru `192.168.0.148` (Ubuntu 24.04, Docker 29.x).
**[![Gitea](https://img.shields.io/badge/Gitea-192.168.0.148:3000-609926?logo=gitea)](http://192.168.0.148:3000)** · **[![Jotty](https://img.shields.io/badge/Jotty-docs-3b82f6)](http://192.168.0.148:1122)** · **[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)**
---
## 🗂 Co je v tomto repo
| Adresář | Účel | Stav |
|---|---|---|
| [`docker-services/`](docker-services/) | Generické `docker-compose.yml` pro 14+ služeb (portainer, vaultwarden, nextcloud, …) | ✅ |
| [`install-scripts/`](install-scripts/) | Bash skripty pro nové servery (Ubuntu 22.04/24.04 LTS) | ✅ |
| [`ansible/`](ansible/) | Ansible playbooks + role pro idempotentní deploy | ✅ |
| [`hermes-install/`](hermes-install/) | Instalace a konfigurace Hermes Agent (mě) na macOS | ✅ |
| [`macos-setup/`](macos-setup/) | Homebrew `Brewfile` + skripty pro macOS workstation | ✅ |
| [`home-nas-tools/`](home-nas-tools/) | Rejstřík projektů a nástrojů z NAS (`/Volumes/Backups/Prace/`) | ✅ |
| [`docs/`](docs/) | Architektura, bezpečnost, contributing | ✅ |
## 🏗 Aktuální infrastruktura
```
┌─────────────────────────────────────────────────────────────────────┐
│ Internet (Cloudflare Tunnel) │
└────────────────────┬────────────────────────────────────────────────┘
│ HTTPS (443)
┌─────────────────────────────────────────────────────────────────────┐
│ Nginx Proxy Manager (192.168.0.148:81, 443) │
│ ├─ DNS: domácí subdomény → LAN IP │
│ └─ Let's Encrypt auto-renew │
└────────────────────┬────────────────────────────────────────────────┘
┌─────────────────┼─────────────────┬──────────────┐
▼ ▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌──────────┐ ┌────────────┐
│ Nextcloud│ │Vaultwarden│ │ Gitea │ │ Jotty (doc)│
│ AIO │ │ :2999 │ │ :3000/222 │ │ :1122 │
│ :11000 │ └──────────┘ └──────────┘ └────────────┘
└──────────┘
… dalších 11 služeb (Plex, RustDesk, Calibre, Audiobookshelf, Wikijs, …)
```
Detailní seznam: [`docker-services/README.md`](docker-services/README.md)
## 🚀 Rychlý start (nový server)
```bash
# 1. Klonuj tento repo
git clone https://github.com/<user>/mates-infra.git ~/infra
cd ~/infra
# 2. Spusť bootstrap (Ubuntu 22.04/24.04 LTS)
sudo bash install-scripts/bootstrap-ubuntu-server.sh
# 3. Nainstaluj všechny služby
sudo bash install-scripts/install-docker.sh
sudo bash install-scripts/install-portainer.sh
# … další viz install-scripts/
# 4. Nebo použij Ansible
cd ansible
ansible-playbook -i inventory.example.yml playbooks/deploy-services.yml
```
## 📚 Dokumentace
- 🏛 [Architektura](docs/architecture.md) jak to celé funguje
- 🔐 [Bezpečnost](docs/security.md) hardening, secrets, HTTPS
- 🤝 [Contributing](docs/contributing.md) jak přispívat
- 📝 [Jotty dokumentace](http://192.168.0.148:1122) knowledge base v Jotty
## 🔒 Bezpečnost
- **Všechna hesla v `.env.example`** nikdy necommituj `.env`
- **HTTPS** Let's Encrypt přes NPM
- **Firewall** UFW + fail2ban
- **Bezpečnostní audit**: viz [`docs/security.md`](docs/security.md)
## 📜 Licence
[MIT](LICENSE) používej jak chceš.
---
**Vyrobeno s ❤️ v homelabu · 2026**