【问题标题】:Mysql in Docker Compose is not taking enviroment variablesDocker Compose 中的 Mysql 没有使用环境变量
【发布时间】:2019-11-05 12:02:03
【问题描述】:

这是我的 docker-compose.yml 文件,其中指定了环境变量(root 用户名、密码等)。但是,当我运行“docker-compose up”时,它表示 MySQL 正在使用空密码进行初始化!

为什么?有解决办法吗?

这是 docker-compose.yml

version: '3.3'

services:
  db:
    image: mysql:5.7
          #build: sqldocker
    ports:
           -  "3306:3306"
    environment:
           - MYSQL_ROOT_PASSWORD=123456
           - MYSQL_DATABASE=testdb
           - MYSQL_USER=root
           - MYSQL_PASSWORD=123456
             # volumes:
            # - my-datavolume:/var/lib/mysql
    healthcheck:
           test: ["CMD", "mysqladmin", "ping"]
           timeout: 20s
           retries: 10
    restart: always
  backendserver:
    build: ./docker-demo-backend/
    ports:
           - "8080:8080"
    links:
           - "db"
    depends_on:
           - "db"
             # restart: always
  frontend:
    build: ./docker-demo-frontend/frontcrud
    links:
           - "backendserver"
    depends_on:
           - "backendserver"
    ports:
           - "80:80"

【问题讨论】:

    标签: mysql docker docker-compose


    【解决方案1】:

    当您使用此图像mysql/5.7 时,启动分为两个步骤。

    第一步是做数据库的初始化,你有这个消息

    2019-11-05T15:01:23.167671Z 1 [Warning] root@localhost is created with an empty password ! Please consider switching off the --initialize-insecure option.
    

    但在 DB 停止并重新启动之后。并且您不再有警告。

    【讨论】:

      【解决方案2】:

      删除 MYSQL_PASSWORD 和 MYSQL_USER

      这些变量是可选的,用于创建新用户和设置该用户的密码。该用户将被授予对 MYSQL_DATABASE 变量指定的数据库的超级用户权限(见上文)。要创建用户,这两个变量都是必需的。

      请注意,无需使用此机制来创建超级用户超级用户,默认情况下会使用 MYSQL_ROOT_PASSWORD 变量指定的密码创建该用户。

      【讨论】:

        【解决方案3】:

        请查看以下建议的解决方法: How to use environment variables in docker compose

        方法 2 提出了一种定义 .ENV 文件的方法,该文件包含此类元素(密码)的值。它适用于 PostgreSQL,但它似乎有帮助。 亲切的问候。

        【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-06-17
        • 2019-07-26
        • 1970-01-01
        • 2021-09-02
        • 2019-01-07
        • 2023-02-20
        • 2022-01-11
        相关资源
        最近更新 更多