Iniciar un contenedor de docker automaticamente al reiniciar
![Iniciar un contenedor de docker automaticamente al reiniciar](https://res.cloudinary.com/jesus-perales/image/upload/q_auto:good/large_h-dark_sy4asp.png)
Es posible iniciar imágenes de Docker de una forma muy sencilla con simplemente ejecutar un docker start contenedor, pero al tener un servicio ya en un servidor productivo, al reiniciarse, vamos a querer que este inicie automáticamente.
Para hacer esto con systemd (algunos lo odian, otros lo aman y otros tantos simplemente trabajan con él), es necesario crear un archivo y enviarlo a la carpeta /etc/systemd/system/ y habilitarlo.
Aquí muestro un ejemplo con un contenedor llamado Nexus
Contenido del archivo :
[Unit]
Description=Nexus container
Requires=docker.service
After=docker.service
[Service]
Restart=always
ExecStart=/usr/bin/docker start -a nexus
ExecStop=/usr/bin/docker stop -t 2 nexus
[Install]
WantedBy=default.target
Comandos a ejecutar:
Creamos el archivo:
touch docker-nexus.service
Lo abrimos con nano y pegamos el contenido de arriba ya personalizado:
nano docker-nexus.service
copiamos el archivo a la carpeta especial de systemd:
sudo cp docker-nexus.service /etc/systemd/system/
Lo habilitamos:
systemctl enable docker-nexus.service
Al reiniciar nuestor SO debería de levantarse automáticamente nuestro contenedor.