Tener una base de datos local es decimonónico, en esta corta guía vas a aprender cómo montar una base de datos mysql con Docker que podrás usar para cualquier proyecto. Este tutorial sobre cómo montar una Base de Datos MySql Persistida con Docker sirve para versiones de Windows 10, Windows 11… pero casi todos los pasos servirían también para Linux o Mac.
No te voy a mentir, escribo esto para poder consultarlo yo mismo en el futuro. Desde hace unos meses uso Windows 11 y ya es la segunda vez este mes que se me corrompe la base de datos mysql que uso para varios proyectos, con el daño que eso conlleva, por eso estas son las ventajas de tener tus bases de datos con Docker:
Vamos a ello.
Si no tienes Docker instalado, instálalo. Hay mil tutoriales, por ahí, busca el que se adecúe a tu entorno y vuelve. BUSCAR EN GOOGLE
Esto es vergonzosamente sencillo, pero como todo, hay que saber montar una Base da Datos MySql Persistida con Docker para poder hacerlo.
Cuando un contendor Docker se para, normalmente se borran todos los datos, en nuestro caso queremos evitar eso para poder usar nuestra base de datos mysql de la forma habitual.
Para lograr ese efecto, crearemos un volumen de docker que contrendrá los datos, un volumen, en esencia, nos permite vincular una carpeta del guest con una del host, así esos archivos no serán borrados al apagarse la máquina.
Y ya está, con esto podemos avanzar.
En este paso vamos a crear un volumen de Docker que luego podremos relacionar con una ubicación física de la máquina host, se hace con el siguiente comando.
docker volume create mysql-db-data
Ahora si haces «docker volume ls» tendrás un volumen nuevo, el que has creado.
Ahora tenemos que crear una carpeta para almacenar en la máquina host el contenido de la base de datos, en mi caso esa ruta será:
C:\Users\Fausto\data_mysql
Ahora levantamos una máquina mysql-db que nos traerá la última versión de mysql.
docker run -d -p 33060:3306 --name mysql-db -e MYSQL_ROOT_PASSWORD=secret --mount src=mysql-db-data,dst=//C/Users/Fausto/data_mysql mysql
Si te fijas en la ruta, por ser Windows 11, yo he tenido que modificar la ruta respecto a la origina, cambiando \ por /, quitando los : y añadiendo doble barra antes de C, quendando: «//C/Users/Fausto/data_mysq»
Y ya estaría.
Con cualquier cliente, por ejemplo mysql workbench, puedes conectarte a través del puerto 33060, que como ves, apunta al 3306, la contraseña en este caso es «secret» pero puedes poner la que quieras.
También puedes acceder con el CLI desde el control de Docker:
Los estudios públicos dicen una cosa y tu tráfico dice otra. Aquí tienes un método…
DeepSeek publicó el 13 de agosto su propio arnés de agentes, DeepSeek Harness (dsh para…
Un compañero me mandó un tuit preguntando qué demonios era el graph engineering. Aquí va…
Monté un llms.txt en un dominio propio y luego hice lo único que da respuestas…
En mayo de 2024 Google empezó a desindexar secciones enteras alojadas dentro de medios de…
OpenAI prepara un altavoz sin pantalla para 2027. Sin pantalla no hay diez enlaces: hay…