Crea una imagen base y copia el contenido del directorio hola en
/app dentro de la imagen.
- Crea un directorio de trabajo vacío.
- Crea el directorio de código de la aplicación que correrá en Docker.
- Crea un archivo
Dockerfilecon las instrucciones para construir la imagen. - Construye la imagen con una etiqueta
hola-mundoque la identifique. - Ejecutara la aplicación dentro de un contenedor Docker
mkdir -p /tmp/work && cd /tmp/work
mkdir hola
cat >>Dockerfile<<EOF
FROM alpine
COPY ./hola /app
CMD ["echo", "¡Hola, Mundo!"]
EOF
docker build -t hola-mundo .
docker run hola-mundo
Para ver los contenedores en ejecución.
docker ps
Cambia el formato que docker ps usa para mostrar los contenedores.
docker ps --format "table {{.Names}} {{.Ports}}"
Para inspeccionar detalles de un contenedor en ejecución en particular, es necesario conocer su ID
docker inspect <ID>
Para montar directorios del host donde Docker se ejecuta y mapear
puertos TCP desde el host hacía los contenedores se utilizan los
parámetros -v y -p.
Normalmente el almacenamiento de los contenedores es efímero y en
algunos casos es necesario persistir datos generados por la aplicación
corriendo dentro de los contenedores.
docker run -v /srv/volume:/data -p 3306:3306 -d mariadb
Remueve contenedores detenidos que no se usan más.
docker ps -a | grep 'weeks ago' | awk '{print $1}' | xargs --no-run-if-empty docker rm
Para remover imágenes viejas y liberar espacio.
docker rmi $(docker images -q --filter "dangling=true")
