6. fejezet · 6.4
Konténerek frissítése, takarítás és a naplók korlátozása
Frissítés
Egy konténer nem frissíti magát. Töltse le az új image-eket, és indítsa újra a konténereket:
anna@web1:~$ cd /srv/diensten
anna@web1:/srv/diensten$ sudo docker compose pull
anna@web1:/srv/diensten$ sudo docker compose up -d
Csak azok a konténerek jönnek létre újra, amelyekhez új image tartozik. Az adatai a volume-okban vannak, így megmaradnak.
- Egy nagyobb frissítés előtt olvassa el az alkalmazás kiadási megjegyzéseit. Előfordul, hogy előbb módosítania kell valamit.
- Frissítés előtt készítsen biztonsági mentést a volume-okról (lásd: Adatbázisok és Docker-kötetek helyes mentése), vagy legalább egy snapshotot.
- Egy rögzített verzió a tagben, például
vaultwarden/server:1.37.5, megelőzi a meglepetéseket. Ilyenkor a verziót Ön emeli meg. Alatesttaggel mindenpullalkalmával a legújabb verziót kapja.
Takarítás
A régi image-ek a lemezen maradnak. Nézze meg, mennyi helyet foglal a Docker, és takarítson:
anna@web1:~$ sudo docker system df
anna@web1:~$ sudo docker image prune
A docker image prune csak azokat a név nélküli image-eket törli, amelyek már semmihez sem tartoznak. A -a kapcsolóval minden olyan image-et töröl, amelyet egyetlen konténer sem használ.
Figyelem: Legyen óvatos a docker volume prune és a docker system prune --volumes parancsokkal. Ezekkel olyan adatokat is törölhet, amelyekre még szüksége van.
Naplók korlátozása
A Docker minden konténer kimenetét egy naplófájlban tárolja, amely alapértelmezés szerint korlátlanul nő. Állítson be korlátot a /etc/docker/daemon.json fájlban:
{
"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
A korlát csak az ezután létrehozott konténerekre vonatkozik, ezért hozza létre őket újra.
Leállítás és eltávolítás
| Parancs | Mit csinál? |
|---|---|
sudo docker compose stop | Leállítja a konténereket, semmit sem töröl |
sudo docker compose down | Eltávolítja a konténereket és a hálózatot, a volume-ok megmaradnak |
sudo docker compose down -v | A volume-okat is eltávolítja: minden adata elvész |
