【Docker】複数のMySQLデータベースに一般ユーザーで接続する方法


はじめに

 本記事は、プログラミング初学者、学習を進めていて疑問に思った点について調べた結果を備忘録も兼ねてまとめたものです。
 そのため、記事の内容に誤りが含まれている可能性があります。ご容赦ください。
 間違いを見つけた方は、お手数ですが、ご指摘いただけますと幸いです。

複数のMySQLデータベースに一般ユーザーで接続する方法

ターミナル
$ mkdir docker-entrypoint-initdb.d && cd $_

$ code 00_grant.sql
00_grant.sql
GRANT ALL ON `myapp_test`.* TO user@'%';
docker-compose.yml
  db:
    image: mysql:5.7
    environment:
      MYSQL_USER: 'webapp'
      MYSQL_PASSWORD: 'webapp_pass'
      MYSQL_DATABASE: 'rails_app_development'
      MYSQL_ROOT_PASSWORD: 'pass'
    volumes:
      - ./docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d
ターミナル
$ docker-compose down

$ docker-compose up