Docker: run vs exec

El tiempo apremia, así que en palabras simples…

docker run

Ejecuta el comando en un nuevo contenedor. Este comando va a levantar el contenedor y ejecutar el comando. Por ejemplo:

docker run --name test -it debian

docker exec

Ejecuta el comando en un contenedor existente. Por ejemplo, si quisiéramos acceder mediante SSH a un contenedor que se está ejecutando:

docker exec -it ubuntu_bash bash

En el caso de docker-compose el comportamiento es el mismo.

Fuente: Docker run vs exec: deep-dive into their differences

Anuncios

Docker y los permisos en directorios compartidos

He estado jugando bastante con Docker últimamente. He aprendido un montón y he tenido que solucionar varios problemas intentando armar un ambiente real de producción de una aplicación X.

El último problema que tuve fue con los permisos de los famosos volumes o directorios. El asunto es que Docker por defecto al montar el directorio, mantiene los permisos que tiene definido ese directorio en tu máquina host.

Sigue leyendo “Docker y los permisos en directorios compartidos”

Docker: Conectarse al servidor MySQL de tu máquina host

Hace unos días empecé a trabajar con Docker para un proyecto personal. Actualmente estoy acostumbrado a trabajar con Vagrant, así que le di la oportunidad a Docker para probar algo nuevo, ya que había leído muy buenos comentarios de esta herramienta.

Lo que voy a detallar a continuación es una nota mental para dejar registro de como finalmente logré conectarme desde un contenedor de Docker a mi servidor MySQL que tengo corriendo en mi máquina local (o host como llaman en el mundo Docker). Perdí muchas horas en esto y no quiero volver a pasar por lo mismo.

Sigue leyendo “Docker: Conectarse al servidor MySQL de tu máquina host”