Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

526
Vistas
¿Por qué el contenedor MySQL Docker se queja de que MYSQL_ROOT_PASSWORD env debe definirse cuando se usan los secretos de Docker 17.03?

Estoy tratando de adaptar el ejemplo secreto de Wordpress de Docker (enlace a continuación) para que funcione en mi configuración de Docker Compose (para Drupal).

https://docs.docker.com/engine/swarm/secrets/#/advanced-example-use-secrets-with-a-wordpress-service

Sin embargo, cuando se activa el contenedor 'mysql', aparece el siguiente error:

"error: la base de datos no está inicializada y la opción de contraseña no está especificada. Debe especificar una de MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD y MYSQL_RANDOM_ROOT_PASSWORD"

Creé los secretos usando el comando 'docker secret create':

 docker secret create mysql_root_pw tmp-file-holding-root-pw.txt docker secret create mysql_pw tmp-file-holding-pw.txt

Después de ejecutar lo anterior, los secretos ' mysql_root_pw ' y ' mysql_pw ' ahora existen en el entorno de enjambre. Verificado haciendo:

 docker secret ls

Aquí están las partes relevantes de mi archivo docker-compose.yml :

 version: '3.1' services: mysql: image: mysql/mysql-server:5.7.17 environment: - MYSQL_ROOT_PASSWORD_FILE="/run/secrets/mysql_root_pw" - MYSQL_PASSWORD_FILE="/run/secrets/mysql_pw" secrets: - mysql_pw - mysql_root_pw secrets: mysql_pw: external: true mysql_root_pw: external: true

Cuando hago " docker stack deployment MYSTACK ", aparece el error mencionado anteriormente cuando el contenedor 'mysql' intenta iniciarse.

Parece que " MYSQL_PASSWORD_FILE " y " MYSQL_ROOT_PASSWORD_FILE " no son variables de entorno estándar reconocidas por MySQL, y todavía espera la variable de entorno " MYSQL_ROOT_PASSWORD ".

Estoy usando Docker 17.03.

¿Alguna sugerencia?

Gracias.

about 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Obtiene este error si su secreto también es una cadena vacía. Eso es lo que me paso a mi, secret esta montado y service configurado correctamente, pero sigue fallando porque no hay contraseña.

about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda