Zastavica --restart za Docker kontejnerje se uporablja za definiranje politike ponovnega zagona vsebnika. Obe možnosti, --restart=razen razen-stop in --restart=vedno, imata nekaj subtilnih, a pomembnih razlik:
--restart=vedno:
- Kontejner bo vedno poskušal ponovno zagnati, ne glede na to, kako se je ustavil.
- Če kontejner crkne, se samodejno ponovno zažene.
- Če se Docker daemon ponovno zažene, se bo vsebnik prav tako samodejno zagnal.
- Tudi če je kontejner ustavljen ročno (kot z ukazom docker stop), se ponovno zažene, ko se Docker daemon ponovno zažene.
--restart=razen-ustavljen:
- Kontejner se samodejno ponovno zažene, ko se sesuje.
- Če se Docker daemon ponovno zažene, se bo vsebnik prav tako samodejno zagnal.
- Ključna razlika: Če je kontejner ročno ustavljen (npr. z ukazom docker stop), se ne bo samodejno zagnal, ko se Docker daemon ponovno zažene.
Povzetek glavnih razlik:
Politika vedno poskuša kontejner ponovno zagnati v vseh primerih, tudi po ročnem ustavljanju. Razen če je strategija ustavljenaSpoštujte odločitev o ročnem ustavljanju, ki po ročnem ustavitvi kontejnerja ne zažene samodejno.
Priporočila za izbiro:
Če želite, da kontejner teče ves čas, ne glede na vse, izberite 'vedno'. Če želiš ročno ustaviti kontejner in ga obdržati ustavljenega, tudi po ponovnem zagonu Dockerja, izberi razen razen-ustavljeno. Ta izbira je pomembna za upravljanje in vzdrževanje kontejnerjev, še posebej, kadar je treba določene storitve začasno ustaviti ali vzdrževati. razen če je ustavljen običajno bolj prilagodljiva možnost, saj administratorjem omogoča ročno upravljanje stanja vsebnika, kadar je to potrebno.
|