# Watchtower
## Descrizione [Sito ufficiale](https://containrrr.dev/watchtower/) - [Repo (Github)](https://github.com/containrrr/watchtower) - [Docs](https://containrrr.dev/watchtower/usage-overview/) Watchtower è un'applicazione per monitorare e aggiornare i cointainer: - Supporto alle repo locali e/o private, compreso il supporto alle credenziali di accesso (se necessarie) - Controllo, aggiornamento e riavvio dei container, in modo totalmente autonomo - Cancellazione automatica delle vecchie images - Possibilità di [notifica](https://containrrr.dev/watchtower/notifications/) in caso di aggiornamenti ## Struttura file e cartelle ``` /home/ └── docker/ └── watchtower/ ├── .env └── docker-compose.yml ``` * `.env` - file contenenti le variabili environment per il docker-compose * `docker-compose.yml` - file usato per creare il container **N.B. Tutti i file e le cartelle devono essere creati a mano.** ## Esempi Semplice esempio per iniziare ad usare subito il container ### docker-compose `docker-compose.yml` ```yml version: "3.5" services: watchtower: container_name: watchtower image: containrrr/watchtower security_opt: - no-new-privileges:true restart: unless-stopped env_file: .env volumes: - /var/run/docker.sock:/var/run/docker.sock - /etc/localtime:/etc/localtime:ro ``` `.env` ```bash # Watchtower WATCHTOWER_SCHEDULE="0 0 * * SAT" # https://crontab.guru/#0_0_*_*_SAT WATCHTOWER_CLEANUP=true WATCHTOWER_TIMEOUT="120s" WATCHTOWER_DEBUG=false WATCHTOWER_INCLUDE_STOPPED=false ``` ## Aggiornamento ### Automatico Chiaramente il container si aggiorna da solo :satisfied: ### Manuale 1. `docker-compose pull` 2. `docker-compose up -d` 3. `docker image prune`