Luku 6 · 6.4
Konttien päivittäminen, siivoaminen ja lokien rajoittaminen
Päivittäminen
Kontti ei päivity itsestään. Hae uudet imaget ja käynnistä kontit uudelleen:
anna@web1:~$ cd /srv/diensten
anna@web1:/srv/diensten$ sudo docker compose pull
anna@web1:/srv/diensten$ sudo docker compose up -d
Vain ne kontit, joille on tullut uusi image, luodaan uudelleen. Tietosi ovat volyymeissa ja säilyvät.
- Lue ennen suurta päivitystä sovelluksen julkaisutiedot. Joskus jotain on muutettava ensin.
- Varmuuskopioi volyymit ennen päivitystä (katso Tietokantojen ja Docker-volyymien varmuuskopiointi oikein), tai ota ainakin snapshot.
- Kiinteä versio tagissa, kuten
vaultwarden/server:1.37.5, estää yllätykset. Silloin nostat versiota itse.latest:lla saat uusimman version jokaisellapull-komennolla.
Siivoaminen
Vanhat imaget jäävät levylle. Tarkista, kuinka paljon tilaa Docker käyttää, ja siivoa:
anna@web1:~$ sudo docker system df
anna@web1:~$ sudo docker image prune
docker image prune poistaa vain nimettömät imaget, jotka eivät enää kuulu mihinkään. -a:lla se poistaa kaikki imaget, joita mikään kontti ei käytä.
Huomaa: Ole varovainen komentojen docker volume prune ja docker system prune --volumes kanssa. Niillä voit poistaa tietoja, joita vielä tarvitset.
Lokien rajoittaminen
Docker tallentaa jokaisen kontin tulosteen lokitiedostoon, joka kasvaa oletuksena rajattomasti. Aseta raja tiedostoon /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
Raja koskee vain kontteja, jotka luodaan sen jälkeen. Siksi kontit luodaan uudelleen.
Pysäyttäminen ja poistaminen
| Komento | Mitä se tekee? |
|---|---|
sudo docker compose stop | Pysäyttää kontit, mitään ei poisteta |
sudo docker compose down | Poistaa kontit ja verkon, volyymit säilyvät |
sudo docker compose down -v | Poistaa myös volyymit: kaikki tietosi katoavat |
