【Docker】docker-composeができない、services.db.environment must be a mapping【Error/エラー】

サーバ

docker-composeでコンテナを起動しようとしたら、以下のエラーが発生

services.db.environment must be a mapping



docker-compose.ymlの記述が良くない。
最初は以下のように記述していた。

version: '3'

services:
  db:
    image: mysql:5.7
    volumes:
      - db_data:/var/lib/mysql
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD=root_pass
      MYSQL_DATABASE=wordpress_db
      MYSQL_USER=wordpress_user
      MYSQL_PASSWORD=wordpress_pass

  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    volumes:
      - ./wordpress:/var/www/html
    ports: 
      - "8080:80"
    restart: always
    environment:
      WORDPRESS_DB_HOST=db:3306
      WORDPRESS_DB_NAME=wordpress_db
      WORDPRESS_DB_USER=wordpress_user
      WORDPRESS_DB_PASSWORD=wordpress_pass

volumes:
  db_data:



environmentのところの配下の文字列に「 – 」をつける必要があった.
これで解決!!

version: '3'

services:
  db:
    image: mysql:5.7
    volumes:
      - db_data:/var/lib/mysql
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=root_pass
      - MYSQL_DATABASE=wordpress_db
      - MYSQL_USER=wordpress_user
      - MYSQL_PASSWORD=wordpress_pass

  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    volumes:
      - ./wordpress:/var/www/html
    ports: 
      - "8080:80"
    restart: always
    environment:
      - WORDPRESS_DB_HOST=db:3306
      - WORDPRESS_DB_NAME=wordpress_db
      - WORDPRESS_DB_USER=wordpress_user
      - WORDPRESS_DB_PASSWORD=wordpress_pass

volumes:
  db_data:

コメント

タイトルとURLをコピーしました