# 📥 Install Scripts > Bash skripty pro nasazení nového Ubuntu serveru (22.04 / 24.04 LTS). > Idempotentní, s `--help` a dry-run. ## 📚 Skripty | Skript | Účel | |---|---| | [`bootstrap-ubuntu-server.sh`](bootstrap-ubuntu-server.sh) | Úvodní setup: aktualizace, uživatel, SSH, firewall, fail2ban | | [`install-docker.sh`](install-docker.sh) | Docker + Docker Compose plugin | | [`install-portainer.sh`](install-portainer.sh) | Portainer CE | | [`install-nginx-proxy.sh`](install-nginx-proxy.sh) | Nginx Proxy Manager (s HTTPS) | | [`backup-all.sh`](backup-all.sh) | Záloha všech Docker dat na NAS | | [`restore-all.sh`](restore-all.sh) | Obnova z NAS zálohy | ## 🚀 Quickstart (nový server) ```bash # 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/.log` - Barvy v terminále (ANSI), automaticky se vypnou v non-TTY ## 🔐 Bezpečnost - **Nikdy nespouštěj skript, který nečteš** – `less ` 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 `prompt` nebo `.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 ```