JavaScriptを有効にしてください

【Docker】Mysql が立ち上がらない(ユーザ設定エラー)

 ·  ☕ 1 分で読めます

Mysql が立ち上がらない(パスワード設定エラー)

Docker で Mysql が立ち上がらなかったのでメモ。

現象

Docker で Mysql のコンテナ立ち上げ時にうまく立ち上がらなかったので docker-compose logs でログを確認
同じようなログ2種類を確認しました。

[ERROR] [Entrypoint]: MYSQL_USER="root", MYSQL_USER and MYSQL_PASSWORD are for 
configuring a regular user and cannot be used for 
the root user Remove MYSQL_USER="root" and use one of the following to control the root user password:
    - MYSQL_ROOT_PASSWORD
    - MYSQL_ALLOW_EMPTY_PASSWORD
    - MYSQL_RANDOM_ROOT_PASSWORD
[ERROR] [Entrypoint]: Database is uninitialized and password option is not specified
     You need to specify one of the following:
     - MYSQL_ROOT_PASSWORD
     - MYSQL_ALLOW_EMPTY_PASSWORD
     - MYSQL_RANDOM_ROOT_PASSWORD

原因

原因は MYSQL_USER="root"root ユーザのパスワード設定は MYSQL_PASSWORD でするなとの事。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
version: '3'

services:
  mysql:
    image: mysql:8.0
    container_name: mysql
    ports:
      - "3306:3306"
    environment:
      MYSQL_DATABASE: test_db
      MYSQL_USER: root
      MYSQL_PASSWORD: passw0rd

対処

10行目の様に root ユーザ用のパスワードを追加。
12行目で 通常ユーザを設定します。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
version: '3'

services:
  mysql:
    image: mysql:8.0
    container_name: mysql
    ports:
      - "3306:3306"
    environment:
      MYSQL_ROOT_PASSWORD: rootpw
      MYSQL_DATABASE: test_db
      MYSQL_USER: user
      MYSQL_PASSWORD: passw0rd

これで問題なく起動できました。

共有

こぴぺたん
著者
こぴぺたん
Copy & Paste Engineer