Docker.pdf

Vista previa de texto
Algo más
La opción -d hace que el contenedor corra en segundo plano. Esto nos permite
ejecutar comandos sobre el mismo en cualquier momento mientras esté en
ejecución. Por ejemplo:
$ docker exec -ti <container-id> /bin/bash
Aquí simplemente se abre una tty en modo interativo. Podrían hacerse otras
cosas como cambiar el working directory, setear variables de entorno, etc. La lista
completa puede verse acá
Ciclo de vida de un contenedor
Hasta ahora vimos cómo ejecutar un contenedor tanto en foreground como en
background (detached). Ahora veremos cómo manejar el ciclo completo de vida
de un contenedor. Docker provee de comandos como create , start, stop, kill ,
y rm. En todos ellos podría pasarse el argumento -h para ver las opciones
disponibles. Ejemplo: docker create -h
Más arriba vimos cómo correr un contenedor en segundo plano (detached).
Ahora veremos en el mismo ejemplo, pero con el comando create. La única
diferencia que esta vez no especificaremos la opción -d. Una vez preparado,
necesitaremos lanzar el contenedor con docker start.
Ejemplo:
$ docker create -P --expose=8001 python:2.7 python -m SimpleHTTPServer 8001
a842945e2414132011ae704b0c4a4184acc4016d199dfd4e7181c9b89092de13
$ docker ps -a
CONTAINER ID IMAGE
COMMAND
CREATED
... NAMES
a842945e2414 python:2.7 "python -m SimpleHTT 8 seconds ago ...
fervent_hodgkin
$ docker start a842945e2414
a842945e2414
$ docker ps
CONTAINER ID IMAGE
COMMAND
... NAMES
a842945e2414 python:2.7 "python -m SimpleHTT ... fervent_hodgkin
Siguiendo el ejemplo, para detener el contenedor se puede ejecutar cualquiera
de los siguientes comandos:
$ docker kill a842945e2414 (envía SIGKILL)
$ docker stop a842945e2414 (envía SIGTERM).
Así mismo, pueden reiniciarse (hace un docker stop a842945e2414 y luego
un docker start a842945e2414):
$ docker restart a842945e2414
o destruirse:
$ docker rm a842945e2414
