Administrez câteva servere Debian cu Docker CE instalat și docker-compose orchestrând mai multe servicii (aproximativ 20 de containere pe mașină).
Fiecare serviciu este configurat cu reporniți: întotdeauna
în docker-compose. Cu toate acestea, există servicii aleatorii (de obicei 1-2 pe mașină) care se închid corect, dar nu repornesc în timpul repornirii gazdei. Acest comportament este complet aleatoriu. Uneori, toate serviciile pornesc, uneori un singur serviciu dintr-un fișier docker-compose.yml nu repornește.
Următorul este un exemplu în care Traefik s-a oprit corect, dar nu a apărut:
- Serviciu configurat să repornească automat:
$ cat docker-compose.yml
versiunea: '3'
Servicii:
proxy invers:
imagine: traefik:1.7
reporniți: întotdeauna
comanda: --web
porturi:
- „80:80”
- „443:443”
- „8080:8080”
volume:
- /var/run/docker.sock:/var/run/docker.sock
- ./traefik.toml:/traefik.toml
retele:
- web
- Codul de ieșire este 128
$ docker-compose ps
Denumirea Comandă State Ports
--------------------------------------------- ---------
traefik_reverse-proxy_1 /traefik --web Exit 128
- Jurnalele arată că serviciul s-a oprit corect, dar nu există semne de activitate de atunci:
$ docker-compose jurnal --tail 6 -t
Se atașează la traefik_reverse-proxy_1
reverse-proxy_1 | 2022-01-21T14:05:28.042399112Z time="2022-01-21T14:05:28Z" level=info msg="Oprirea cu grație a serverului"
reverse-proxy_1 | 2022-01-21T14:05:28.042450915Z time="2022-01-21T14:05:28Z" level=debug msg="Se așteaptă 10 secunde înainte de a opri conexiunile la punctul de intrare http..."
reverse-proxy_1 | 2022-01-21T14:05:28.042463326Z time="2022-01-21T14:05:28Z" level=debug msg="Se așteaptă 10 secunde înainte de a opri conexiunile pe api punct de intrare..."
reverse-proxy_1 | 2022-01-21T14:05:28.053256515Z time="2022-01-21T14:05:28Z" level=debug msg="Entrypoint API închis"
reverse-proxy_1 | 2022-01-21T14:05:28.053283046Z time="2022-01-21T14:05:28Z" level=debug msg="Punctul de intrare http închis"
reverse-proxy_1 | 2022-01-21T14:05:28.059721498Z time="2022-01-21T14:05:28Z" level=info msg="Închidere"
- Timpul de funcționare a serverului corespunde cu mesajul de închidere:
$ timp de funcționare
11:21:31 până la 29 de zile, 20:15, 1 utilizator, medie de încărcare: 0,46, 0,43, 0,44
- Versiunea mea docker este următoarea:
$ docker --versiune
Versiunea Docker 19.03.12, versiunea 48a66213fe
Să nu ne concentrăm doar pe Traefik, deoarece este complet aleatoriu ce container nu pornește și când.