Pasar al contenido principal

Creando un contenedor de MySQL con Docker

Creando un contenedor de MySQL con Docker

Hola gente del futuro.

En el artículo Docker, primeros pasos creamos un contenedor a partir de la imagen hello-world, hoy nos adentraremos un poco más creando un contenedor de MySQL.

El comando que hace el trabajo es el siguiente:

docker run -d -p 33061:3306 --name mysql57 -e MYSQL_ROOT_PASSWORD=secret mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci

Analicemos el comando:

docker run corre/crea un contenedor.

-d indica que el contenedor permanecerá corriendo en segundo plano.

-p 33061:3306 conecta el puerto 33061 de nuestro sistema operativo con el puerto 3306 del contenedor.

--name mysql57 le da un nombre personalizado al contenedor.

-e MYSQL_ROOT_PASSWORD=secret asigna la contraseña "secret" al usuario "root" de MySQL, -e sirve para configurar variables de entorno.

mysql:5.7 indica la imagen a partir de la cual se va a crear el contenedor, después de los dos puntos se indica la versión específica de la imagen.

--character-set-server=utf8mb4 es una configuración específica de mysql, será la codificación de caracteres por defecto cuando creemos bases de datos.

--collection-server=utf8mb4_unicode_ci le dice a mysql que use utf8mb4 en las colecciones de datos.

Una vez ejecutado el comando, tendremos corriendo un servidor de MySQL.

Para conectarnos al servidor usando el proprio docker:

docker exec -it mysql57 mysql -uroot -p

Ingresamos la contraseña del usuario root, en nuestro ejemplo "secret" y ya estamos dentro de mysql para gestionar nuestras bases de datos.

Si queremos usar nuestro cliente MySQL preferido, por ejemplo Sequel Pro, los datos que usaremos para conectarnos son:

  • Host: 127.0.0.1
  • User: root
  • Password: secret
  • Puerto: 33061

Eso es todo por ahora futuro desarrollador que usará docker en sus proyectos, nos leemos en el siguiente artículo.

P.D. Si eres de los que prefieren ver las cosas en video aquí te dejo la grabación de la transmisión en vivo en la que hablamos sobre el tema:

Suscríbete a nuestro boletín

Ingresa tu correo electrónico para recibir nuestro boletín semanal