Kapitel 6 · 6.4
Uppdatera containrar, städa upp och begränsa loggar
Uppdatera
En container uppdaterar inte sig själv. Du hämtar de nya images och startar om containrarna:
anna@web1:~$ cd /srv/diensten
anna@web1:/srv/diensten$ sudo docker compose pull
anna@web1:/srv/diensten$ sudo docker compose up -d
Bara containrar med en ny image skapas på nytt. Dina data ligger i volymer och finns kvar.
- Läs appens release notes före en stor uppdatering. Ibland behöver du ändra något först.
- Gör en säkerhetskopia av volymerna före en uppdatering (se Säkerhetskopiera databaser och Docker-volymer på rätt sätt), eller åtminstone en snapshot.
- En fast version i taggen, som
vaultwarden/server:1.37.5, förhindrar överraskningar. Du höjer den då själv. Medlatestfår du den senaste vid varjepull.
Städa upp
Gamla images ligger kvar på disken. Se hur mycket utrymme Docker använder och städa upp:
anna@web1:~$ sudo docker system df
anna@web1:~$ sudo docker image prune
docker image prune tar bara bort images utan namn som inte hör till något längre. Med -a tar den bort alla images som ingen container använder.
Obs: Var försiktig med docker volume prune och docker system prune --volumes. Med dem kan du slänga data som du fortfarande behöver.
Begränsa loggar
Docker sparar utdata från varje container i en loggfil som som standard växer obegränsat. Sätt en gräns i /etc/docker/daemon.json:
{
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "3"
}
}
anna@web1:~$ sudo systemctl restart docker
anna@web1:~$ cd /srv/diensten && sudo docker compose up -d --force-recreate
Gränsen gäller bara för containrar som skapas efteråt. Därför skapar du dem på nytt.
Stoppa och ta bort
| Kommando | Vad gör det? |
|---|---|
sudo docker compose stop | Stoppar containrar, slänger ingenting |
sudo docker compose down | Tar bort containrar och nätverk, volymerna finns kvar |
sudo docker compose down -v | Tar även bort volymerna: alla dina data försvinner |
