Peatükk 6 · 6.4
Konteinerite uuendamine, koristamine ja logide piiramine
Uuendamine
Konteiner ei uuenda end ise. Laadi alla uued image'id ja käivita konteinerid uuesti:
anna@web1:~$ cd /srv/diensten
anna@web1:/srv/diensten$ sudo docker compose pull
anna@web1:/srv/diensten$ sudo docker compose up -d
Uuesti luuakse ainult need konteinerid, millel on uus image. Sinu andmed on volume'ites ja jäävad alles.
- Enne suurt uuendust loe läbi rakenduse väljalaskemärkmed. Mõnikord tuleb enne midagi muuta.
- Tee enne uuendust volume'itest varukoopia (vt Andmebaaside ja Dockeri köidete õige varundamine) või vähemalt hetktõmmis.
- Kindel versioon sildis, näiteks
vaultwarden/server:1.37.5, hoiab ära üllatused. Siis tõstad versiooni ise.latestpuhul saad igapullkorral uusima.
Koristamine
Vanad image'id jäävad kettale alles. Vaata, kui palju ruumi Docker kasutab, ja korista:
anna@web1:~$ sudo docker system df
anna@web1:~$ sudo docker image prune
docker image prune kustutab ainult nimeta image'id, mis ei kuulu enam millegi juurde. -a korral kustutab see kõik image'id, mida ükski konteiner ei kasuta.
Tähelepanu: Ole ettevaatlik käskudega docker volume prune ja docker system prune --volumes. Nendega võid kustutada andmeid, mida sul veel vaja on.
Logide piiramine
Docker salvestab iga konteineri väljundi logifaili, mis vaikimisi kasvab piiramatult. Sea piirang failis /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
Piirang kehtib ainult konteineritele, mis luuakse pärast seda, seepärast loo need uuesti.
Peatamine ja eemaldamine
| Käsk | Mida see teeb? |
|---|---|
sudo docker compose stop | Peatab konteinerid, midagi ei kustutata |
sudo docker compose down | Eemaldab konteinerid ja võrgu, volume'id jäävad alles |
sudo docker compose down -v | Eemaldab ka volume'id: kõik sinu andmed kaovad |
