🥋
Dojo
Español
Español
  • Dojo
    • 🔎Contenido relevante
  • App Store
    • Crear cuenta de Apple developer
    • Crear cuenta organizacional en Apple developer
    • Subir una aplicación a App store
  • Classroom
    • Crear una clase en Classroom
    • Crear y añadir temas a una clase de Classroom
    • Agregar estudiantes o instructores en Classroom
    • Asignar entrenamientos en Classroom
    • Ingresar a un entrenamiento como estudiante
  • Docker
    • Instalar Docker
  • Editor de video
    • HandBrake
      • Cambiar el formato de un video en HandBrake
    • iMovie
      • Editar un video en iMovie
  • Git
    • Hacer un 3-way merge en git
    • Hacer un Fast Forward Merge en Git
    • Hacer un git revert
    • Resolver un conflicto de merge con la línea de comando
    • Usar git add
    • Usar git cherry pick
    • Usar git rm
    • Usar git stash
  • Git Graph
    • Instalar Git Graph
    • Ver gráfico del repositorio
    • Filtrar ramas
    • Hacer merge a ramas
  • GitBook
    • Crear contenido de Dojo en Gitbook
    • Crear un espacio en GitBook
    • Duplicar un espacio en GitBook
    • Eliminar un espacio en GitBook
    • Mover un espacio en GitBook
  • GitLab
    • Creación de milestones en GitLab
    • Visualización de milestones en GitLab
    • Cierre de milestones en GitLab
    • Crear un repositorio en GitLab
    • Configurar la autenticación de dos factores para GitLab
    • Hacer un bulk en GitLab
    • Importar issues a GitLab
    • Creación de tareas en GitLab
    • Visualización de tareas en GitLab
    • Cerrar tareas en GitLab
    • Copiar Solutions/Template en Proyectos de GitLab
    • Actualizar instancia de GitLab
  • Gmail
    • Crear una firma de Gmail
    • Crear una plantilla de correo en Gmail
    • Enviar correos con distintos alias o grupos
    • Obtener permisos para enviar y recibir correos desde un alias o grupo
  • Grabador de video
    • Loom
      • Grabar con Loom
      • Instalar Loom
  • HUGO
    • Organizar contenido Markdown
  • Java
    • Instalar Java con SDKMan
  • Jira
    • Usar shortcuts en Jira
    • Usar filtros avanzados en Jira
    • Usar filtros básicos en jira
    • Usar filtros en un proyecto de Jira
  • Kubernetes
    • Implementar un microservicio en Kubernetes
    • Ver registros de pods de Kubernetes
    • Ejecutar un pod con imágenes de un repositorio privado
    • Usar config maps para configurar una implementación
    • Usar secrets para configurar una implementación
    • Comunicar dos microservicios en un clúster de Kubernetes
    • Crear un Ingress Controller en un clúster
    • Configurar Horizontal Pod Autoscaler en Kubernetes
    • Conectar un contenedor a Google Storage
  • Make
    • Instalar Make
  • Minikube
    • Instalar Minikube
    • Administrar un clúster con Minikube
    • Usar Minikube para configurar un clúster de Kubernetes
  • MySQL
    • Hacer un dump con MySQL
    • Instalar MySQL con contenedores de Docker
  • Node.js
    • Instalar Gray-matter
    • Usar Gray-matter
    • Leer archivo en Node.js
  • n8n
    • Iniciar con n8n
    • Untitled
    • Seleccionar información en n8n
    • Funciones de n8n
    • Conectar credenciales de n8n por medio de APIs
  • Open SSH
    • Generar un par de claves privada-pública SSH
  • Outline
    • Crear backup de Outline
  • Play store
    • Subir una aplicación a Play store
    • Crear cuenta organizacional en Play store
  • Telegram
    • Reenviar mensajes a múltiples usuarios
  • Tezos
    • Desplegar un Smart Contract
    • Implementar un contrato NFT
    • Interactuar con un Smart Contract con Taquito
  • VaultWarden
    • Crear una cuenta
    • Crear una contraseña
    • Compartir credenciales a externos
  • Visual Studio Code
    • Instalar visual studio code
    • Instalar extensiones en vscode
  • VueJS
    • Crear un proyecto con Vue
    • Instalar VueCLI
  • Youtube
    • Subir un video a YouTube
  • Zoho
    • Compartir accesos desde Zoho
    • Quitar accesos desde Zoho
    • Ingresar a la base de dojo con un acceso compartido por Zoho
Powered by GitBook
On this page
  • Iniciar una instancia de servidor mysql
  • Conéctese a MySQL desde el cliente de línea de comandos de MySQL
  • Vía docker-composeodocker stack deploy
  • Acceso al shell del contenedor y visualización de registros de MySQL
  • Usando un archivo de configuración de MySQL personalizado
  • Enlace de referencia
  1. MySQL

Instalar MySQL con contenedores de Docker

PreviousHacer un dump con MySQLNextNode.js

Last updated 1 year ago

Iniciar una instancia de servidor mysql

Iniciar una instancia MySQL es simple:

$ docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag

Donde some-mysql está el nombre que se le va a asignar al contenedor, my-secret-pwes la contraseña que se establecerá para el usuario root de MySQL y tag es la etiqueta que especifica la versión de MySQL que se desea.

Conéctese a MySQL desde el cliente de línea de comandos de MySQL

El siguiente comando inicia otra instancia de contenedor mysql y ejecuta el mysql cliente de línea de comandos en el contenedor original mysql, lo que le permite ejecutar instrucciones SQL en su instancia de base de datos:

$ docker run -it --network some-network --rm mysql mysql -hsome-mysql -uexample-user -p

Donde some-mysql está el nombre del contenedor original mysql (conectado a la some-networkred Docker).

Esta imagen también se puede utilizar como cliente para instancias remotas o que no sean de Docker:

$ docker run -it --rm mysql mysql -hsome.mysql.host -usome-mysql-user -p

Vía o

Ejemplo docker-compose.ymlpara mysql:

# Use root/example as user/password credentials
version: '3.1'

services:

  db:
    image: mysql
    # NOTE: use of "mysql_native_password" is not recommended: https://dev.mysql.com/doc/refman/8.0/en/upgrading-from-previous-series.html#upgrade-caching-sha2-password
    # (this is just an example, not intended to be a production configuration)
    command: --default-authentication-plugin=mysql_native_password
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: example

  adminer:
    image: adminer
    restart: always
    ports:
      - 8080:8080

Ejecutar docker stack deploy -c stack.yml mysql(o docker-compose -f stack.yml up), esperar a que se inicialice por completo y visitar http://swarm-ip:8080, http://localhost:8080o http://host-ip:8080(según corresponda).

Acceso al shell del contenedor y visualización de registros de MySQL

El comando docker exec permite ejecutar comandos dentro de un contenedor de Docker. La siguiente línea de comando dará un shell bash dentro del contenedor mysql:

$ docker exec -it some-mysql bash

El registro está disponible a través del registro del contenedor de Docker:

$ docker logs some-mysql

Usando un archivo de configuración de MySQL personalizado

La configuración predeterminada para MySQL se puede encontrar en /etc/mysql/my.cnf, que puede tener !includedir directorios adicionales como /etc/mysql/conf.do /etc/mysql/mysql.conf.d. Inspeccionar los archivos y directorios relevantes dentro de la imagen mysql para obtener más detalles.

Si /my/custom/config-file.cnf es la ruta y el nombre de su archivo de configuración personalizado, puede iniciar su contenedor mysql de esta manera (tomar en cuenta que en este comando solo se usa la ruta del directorio del archivo de configuración personalizado):

$ docker run --name some-mysql -v /my/custom:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag

Esto iniciará un nuevo contenedor some-mysql donde la instancia de MySQL usa la configuración de inicio combinada de /etc/mysql/my.cnfy /etc/mysql/conf.d/config-file.cnf, con la configuración de este último teniendo prioridad.

Configuración sin cnfarchivo

Muchas opciones de configuración se pueden pasar como banderas a mysqld. Esto dará la flexibilidad de personalizar el contenedor sin necesidad de un cnf archivo. Por ejemplo, si se quiere cambiar la codificación y la intercalación predeterminadas para que todas las tablas usen UTF-8 ( utf8mb4), simplemente ejecutar lo siguiente:

$ docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci

Si se quiere ver una lista completa de las opciones disponibles, simplemente ejecute:

$ docker run -it --rm mysql:tag --verbose --help

Enlace de referencia

docker-compose
docker stack deploy
Probar en Juega con Docker
https://hub.docker.com/_/mysql
https://labs.play-with-docker.com/?stack=https://raw.githubusercontent.com/docker-library/docs/06990e05c934d425c74addcc5ea462f53de6c8cd/mysql/stack.yml&_gl=1*1m37pwp*_ga*MTg2OTkyNzQzMi4xNjc2Njk3MjYz*_ga_XJWPQMJYHQ*MTY5MjQyNDQzMC41LjEuMTY5MjQyNTUyMi40OS4wLjA.