- La creazione dell'utente non è più obbligatoria: lasciando vuoto il nome si usa l'utente corrente (SUDO_USER o root) - Clona lvm-volume-enlarger in /opt e, se la root è un LV ext* con spazio libero nel VG, propone l'esecuzione di enlarge.sh - Corregge il codename Ubuntu non espanso in docker.sources Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2.7 KiB
2.7 KiB
Setup Ubuntu Server + Docker + Portainer
Questo repository contiene uno script per configurare rapidamente un server Ubuntu:
- Aggiorna il sistema e installa pacchetti base
- Configura repository e installa Docker (CE, CLI, containerd, buildx, compose plugin)
- Chiede un nome utente da creare (opzionale: lasciando vuoto usa l'utente corrente) e lo aggiunge al gruppo
docker - Scarica lvm-volume-enlarger e, se il volume LVM di root può essere allargato, propone di eseguire lo script
- Esegue una post-installazione tramite
make - Clona il repo Portainer e ne esegue il deploy via Docker
In aggiunta, applica misure di hardening (senza SSH hardening):
- Impostazione timezone (default: Europe/Rome)
- Auto-aggiornamenti di sicurezza (
unattended-upgrades) - Fail2ban: jail
sshdabilitata con limiti prudenziali - Docker:
daemon.jsonconlive-restoree rotazione log
Requisiti
- Esegui su Ubuntu Server (root/sudo necessario)
- Connettività Internet
Uso
- Copia la cartella
linux-server-setupsul server Ubuntu. - Esegui lo script di setup:
sudo bash scripts/setup.sh
- Inserisci il nome utente quando richiesto, oppure premi Invio per usare l'utente corrente (quello che ha lanciato
sudo, oroot). Lo script:- creerà l'utente (se non esiste) e imposterà la password
- clonerà
lvm-volume-enlargerin/opt/lvm-volume-enlarger; se la root è un volume LVM ext4 e il volume group ha spazio libero, chiederà se eseguireenlarge.sh - installerà Docker e aggiungerà l'utente al gruppo
docker(non necessario se l'utente èroot) - eseguirà
make postinstallper utilità post-installazione - clonerà
https://git.pyconetwork.it/francesco/portainer.gitin/opt/portainere tenterà il deploy condocker compose up -d
Note
- Dopo l'aggiunta al gruppo
docker, è necessario fare logout/login per applicare i permessi. - Se rifiuti l'estensione del disco, puoi eseguirla in seguito con
sudo bash /opt/lvm-volume-enlarger/enlarge.sh. Lo script usa solo lo spazio già libero nel volume group: se hai ingrandito il disco virtuale, prima vanno estesi la partizione e il PV (growpart+pvresize). - Se il repository Portainer non contiene un
docker-compose.yml/compose.yml, lo script proveràmake deployse presente; altrimenti mostrerà un avviso. - Il target
postinstallinstalla:vim,tmux,net-tools,wget,jq,tree,ufw,fail2ban,software-properties-common,htop,lsof, e abilita UFW + Fail2ban. - Il target
postinstallinstalla:vim,tmux,net-tools,wget,jq,tree,fail2ban,software-properties-common,htop,lsof.