今回使用するコンテナ
今回使用するコンテナは下記記事で紹介したLaravel環境用のコンテナを使用したいと思います。すでに環境構築は完了している前提で話を進めていきます。

接続方法
今回は下記の3パターンの接続方法で検証します。
- コンソール
- MySQL Workbench
- VScode プラグイン「MySQL」
コンソールで接続
mysqlをインストールしているdbコンテナにアクセスします。下記コマンドを実行します。コマンドの説明を少しするとexecの後ろについている「db」はコンテナ名です。docker-compose.ymlでここは指定可能ですのでご自身で指定したコンテナ名に合わせて下さい。
$ docker-compose exec db bash
root@a9b2521057ae:/#
その後、mysqlコマンドを実行します。「mysql -u phper -psecret」をコンソールで実行します。MySQLに接続して「show databases;」を実行するとDB一覧が出力されました。
root@a9b2521057ae:/# mysql -u phper -psecret mysql: [Warning] Using a password on the command line interface can be insecure. Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 16 Server version: 8.0.22 MySQL Community Server - GPL Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | laravel_local | +--------------------+ 2 rows in set (0.00 sec)
ポートフォワディングの設定追加
コンソールで接続する場合は必要なかったですが、これから紹介するMySQL WorkbenchなどのGUIツールを使用したい場合、docker-compose.ymlでポートフォワード設定が必要です。上記で紹介した記事をもとに環境構築している方はdbコンテナのポートフォワード設定がされていないので下記のように修正してください。太字にしているportsの箇所を追加しています。
#docker-compose.yml version: "3.8" services: app: build: ./docker/php volumes: - ./src:/workspace web: image: nginx:1.18-alpine ports: - 8000:80 volumes: - ./src:/workspace - ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf working_dir: /workspace db: build: ./docker/mysql volumes: - db-store:/var/lib/mysql ports: - 3307:3306 volumes: db-store:
これで外部からdbコンテナに接続したい場合、3307ポートで指定すると接続できるようになります。ちなみに3307にしたのは他のサービスと被らないようにしただけなので変更はご自由にどうぞ。
MySQL Workbenchで接続
MySQL WorkbenchとはMySQLをGUIで操作できるソフトウェアです。下記からインストールできます。※Oracleアカウントが必要です。
下記画像と同じように接続情報の設定をします。
- Connection Name: 「任意の設定名」
- Hostname: localhost
- Port: 3307
- Username: phper
- Password: secret
これで接続完了です。
VScode プラグイン「MySQL」
まずはプラグインをインストールします。Mysqlで検索すると下記画像のプラグインがヒットするのでこれをインストールしてください。
インストールが完了するとサイドバーにDBアイコンが追加されるのでクリックします。その後、画面左上の「+」ボタンをクリックすると下記画像のように接続情報の設定が入力できるようになります。入力後に「Connect」をクリックするとMySQLにVScodeからアクセスできます。
- Connection Name: 「任意の設定名」
- Hostname: localhost
- Port: 3307
- Username: phper
- Password: secret
これで接続完了です。ちなみにこのプラグインはMySQL以外も接続できるみたいです。便利ですね。
コメント