Secciones

Contenedor mysql con docker compose (en MAC OS X)

Inicio » Artículos » Contenedor mysql con docker compose (en MAC OS X)
La categoría del artículo es
Escrito el 22 February 2016, 05:51


Si te estás peleando con docker compose y mysql para hacerlo funcionar correctamente en tu máquina MAC OS X, aquí está la solución.


Si te estás peleando con docker compose y mysql para hacerlo funcionar correctamente en tu máquina MAC OS X, aquí está la solución.

Este será el contenido que debe tener tu docker-compose.yml (entre otras cosas que necesites):

yml:
database:
  image: mysql:5.6.27
  ports:
    - 3306:3306
  volumes:
    - ~/mysqldata/:/var/lib/mysql:rw
    - ./mysql/:/mysql:rw
  environment:
    - MYSQL_ROOT_PASSWORD=mypassword
  command: "/mysql/run.sh"
  container_name: mysql_ddbb

 

También debes tener este script, que se encargará de asegurarse que el usuario y el grupo encargado de ejecutar mysql en el contenedor, sean los mismos que en el host:

bash:
#!/bin/bash
# Script to workaround docker-machine/boot2docker OSX host volume issues: https://github.com/docker-library/mysql/issues/99
'* Working around permission errors locally by making sure that "mysql" uses the same uid and gid as the host volume'
TARGET_UID=$(stat -c "%u"'-- Setting mysql user to use uid '$TARGET_UID
usermod -o -u $TARGET_UID mysql || true
TARGET_GID=$(stat -c "%g"'-- Setting mysql group to use gid ''* Starting MySQL'

Guárdalo en mysql/run.sh. Este script se ejecutará cuando arranquemos el contenedor de mysql, tal y como hemos especificado en la sentencia command.


Espero tus comentarios...

your_ip_is_blacklisted_by sbl.spamhaus.org.