Docker: Agregar una directiva de reinicio a un contenedor que ya se creó


Veo que Docker ha agregado algo llamado políticas de reinicio para manejar el reinicio de contenedores en caso de, por ejemplo, reiniciar.

Si bien esto es muy útil, veo que el comando restart policy solo funciona con docker run y no con docker start. Así que mi pregunta es:

¿Hay alguna forma de agregar directivas de reinicio a un contenedor que ya se creó en el pasado?

 138
Author: Enrique Moreno Tent, 2014-11-10

3 answers

En las versiones recientes de docker (a partir de la 1.11) usted tiene un update orden:

docker update --restart=always <container>
 350
Author: Pau Ruŀlan Ferragut,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-01-25 16:57:11

Hay dos enfoques para modificar RestartPolicy:

  • Encuentre el ID del contenedor, detenga todo el servicio docker, modifique /var/lib/docker/containers/CONTAINER_ID/hostconfig.json, establezca RestartPolicy - > Name en "always" e inicie docker service.
  • docker commit su contenedor como una nueva imagen, detenga & rm el contenedor actual e inicie un nuevo contenedor con la imagen.
 42
Author: Yale Huang,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-09-14 11:38:30

No. Y de manera más general, no puede editar un contenedor una vez que se crea (puerto expuesto, nombre de host, configuración de red) a través de Docker. Tendría que volver a crearlo con docker run.

Por lo general, es una buena práctica tener su contenedor sin estado, por lo que no debería causar ningún problema. Echa un vistazo a volumes (-v) para ayudarte a lograrlo.

 -7
Author: creack,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-11-11 01:45:11