- 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
1.9 KiB
1.9 KiB
📥 Install Scripts
Bash skripty pro nasazení nového Ubuntu serveru (22.04 / 24.04 LTS). Idempotentní, s
--helpa dry-run.
📚 Skripty
| Skript | Účel |
|---|---|
bootstrap-ubuntu-server.sh |
Úvodní setup: aktualizace, uživatel, SSH, firewall, fail2ban |
install-docker.sh |
Docker + Docker Compose plugin |
install-portainer.sh |
Portainer CE |
install-nginx-proxy.sh |
Nginx Proxy Manager (s HTTPS) |
backup-all.sh |
Záloha všech Docker dat na NAS |
restore-all.sh |
Obnova z NAS zálohy |
🚀 Quickstart (nový server)
# 1. Bootstrap (úvodní nastavení)
sudo bash bootstrap-ubuntu-server.sh
# 2. Docker
sudo bash install-docker.sh
# 3. Portainer
sudo bash install-portainer.sh
# 4. NPM (reverzní proxy)
sudo bash install-nginx-proxy.sh
# 5. Přidej služby
cd ~/docker-services/portainer
cp .env.example .env && nano .env
docker compose up -d
⚙️ Společné konvence
- Všechny skripty podporují
--help set -euo pipefail(fail-fast)- Idempotentní (můžeš spustit víckrát)
- Logy do
/var/log/<skript>.log - Barvy v terminále (ANSI), automaticky se vypnou v non-TTY
🔐 Bezpečnost
- Nikdy nespouštěj skript, který nečteš –
less <skript>předem - Všechny skripty chtějí root – kontrolují
$EUID - Všechny skripty podporují dry-run, kde to dává smysl
- Bez hesel v skriptech – vše z
promptnebo.env
📁 Struktura
install-scripts/
├── README.md
├── bootstrap-ubuntu-server.sh
├── install-docker.sh
├── install-portainer.sh
├── install-nginx-proxy.sh
├── backup-all.sh
├── restore-all.sh
└── lib/ # Společné knihovny
└── common.sh