Docker MySQL: debe configurar variables de entorno, pero ya están configuradas

Docker MySQL: debe configurar variables de entorno, pero ya están configuradas

Configuré las variables ENV pero aún el contenedor arroja un error que indica que debo configurarlas.

Esta es la imagen que estoy intentando usar:mysql-56-centos7.

¿Alguna sugerencia sobre cómo solucionar este problema?

Archivo Docker:

FROM centos/mysql-56-centos7


ENV MYSQL_USER=root \
    MYSQL_PASSWORD=test \
    MYSQL_DATABASE=test \
    MYSQL_DATA_DIR=/var/lib/mysql \
    MYSQL_RUN_DIR=/run/mysqld \
    MYSQL_LOG_DIR=/var/log/mysql

EXPOSE 3306/tcp

CMD ["run-mysqld"]

El siguiente es el error:

[root@centos1 test01]# docker container logs cf0245546d47
=> sourcing 20-validate-variables.sh ...
You must either specify the following environment variables:
  MYSQL_USER (regex: '^[a-zA-Z0-9_]+$')
  MYSQL_PASSWORD (regex: '^[a-zA-Z0-9_~!@#$%^&*()-=<>,.?;:|]+$')
  MYSQL_DATABASE (regex: '^[a-zA-Z0-9_]+$')
Or the following environment variable:
  MYSQL_ROOT_PASSWORD (regex: '^[a-zA-Z0-9_~!@#$%^&*()-=<>,.?;:|]+$')
Or both.
Optional Settings:
  MYSQL_LOWER_CASE_TABLE_NAMES (default: 0)
  MYSQL_LOG_QUERIES_ENABLED (default: 0)
  MYSQL_MAX_CONNECTIONS (default: 151)
  MYSQL_FT_MIN_WORD_LEN (default: 4)
  MYSQL_FT_MAX_WORD_LEN (default: 20)
  MYSQL_AIO (default: 1)
  MYSQL_KEY_BUFFER_SIZE (default: 32M or 10% of available memory)
  MYSQL_MAX_ALLOWED_PACKET (default: 200M)
  MYSQL_TABLE_OPEN_CACHE (default: 400)
  MYSQL_SORT_BUFFER_SIZE (default: 256K)
  MYSQL_READ_BUFFER_SIZE (default: 8M or 5% of available memory)
  MYSQL_INNODB_BUFFER_POOL_SIZE (default: 32M or 50% of available memory)
  MYSQL_INNODB_LOG_FILE_SIZE (default: 8M or 15% of available memory)
  MYSQL_INNODB_LOG_BUFFER_SIZE (default: 8M or 15% of available memory)

Respuesta1

Para abreviar, no puedes ejecutar esta imagen como root. En la mayoría de los casos, es una mala práctica ejecutar cualquier imagen de Docker como root.

Intente ejecutar como un usuario diferente y podrá ejecutar la imagen.

Para más detalles, simplemente lo remitiría aestediscusión. Además, si no está seguro, intente siempre utilizar la configuración predeterminada que puede encontrar encentro acoplable.

Nota: Esta es una imagen desactualizada, deberías usar algo más actualizado. Esta imagen no se ha actualizado en más de 3 años.

información relacionada