VERSIÓN
Antes de montar el docker de mysql, es mejor revisar este enlace y decidir la versión que queremos utilizar:
https://hub.docker.com/_/mysql
Actualmente los dockers soportados son las siguientes versiones de mysql:
8.0.23 8.0.8 latest
5.7.33 5.7 5
5.6.51 5.6
Además vamos a tener la precaución de que los datos sean persistentes. Una vez que se elimine el docker, podremos volver a levantarlo y tendremos nuestras bases de datos intactas.
CREACIÓN DEL DOCKER
Veamos que parámetros vamos a utilizar para levantar el docker, algunos los especificaremos pero son opcionales.
-d --> Modo en segundo plano (detached)
--rm --> Cuando paremos el contenedor automáticamente se eliminará
--name mysql --> Nombre del docker
-e --> Sirve para pasar al docker una variable de entorno, en este contenedor le vamos a especificar la contraseña del usuario root. seguido de este parámetro especificamos la variable y su valor:
MYSQL_ROOT_PASSWORD=Pa$$w0rD
-p 3306:3306 --> Puerto 3306 en el equipo y el correspondiente en el docker
-v mysql_data:/var/mysql --> Ruta local del equipo y la correspondiente en el docker, esto hará que los datos se guarden en el equipo local y sean persistentes siempre que especifiquemos la misma configuración del volumen.
mysql:latest --> última versión del docker de mysql en el repositorio oficial Docker Hub. Si quisieramos una versión concreta, podriamos especificarla:
mysql:5.7.33
El comando completo sería:
# docker run -d --rm --name mysql -e MYSQL_ROOT_PASSWORD=Pa$$w0rD -p 3306:3306 -v mysql_data:/var/mysql mysql
Comprobamos que el docker está funcionando:
# docker ps -a
DOCKER-COMPOSE
El fichero docker-compose.yml tendría el siguiente contenido:
version: '3.3'
services:
mysql:
container_name: mysql
environment:
- MYSQL_ROOT_PASSWORD=Pa$$w0rD
ports:
- '3306:3306'
volumes:
- 'mysql_data:/var/mysql'
image: mysql
CONEXIÓN DESDE DBEAVER
Para conectarnos a la base de datos que tenemos en un contenedor en nuestro propio equipo, creamos una nueva conexión, seleccionamos mysql y especificamos los datos básicos:
- Server Host: localhost
- Port: 3306
- Nombre de usuario: root
- Contraseña: Pa$$w0rD
Al finalizar podremos realizar la conexión. Es posible que aparezca algún error en la conexión debido a un parámetro mal configurado. Tanto al crear la conexión como al editarla, en la pestaña Driver Properties podremos reconfigurar una infinidad de parámetros y su valor en la conexión.
Si la conexión no la realizamos desde el mismo equipo que tiene el docker, hay que tener en cuenta que para conexiones remotas tendremos que abrir correctamente los puertos en el firewall del equipo que contiene el contenedor de mysql.
SaluDOS
No hay comentarios:
Publicar un comentario