目的
DockerがインストールされたMacOS環境で、MySQLをDocker(Terminal)経由で動かす方法を記載
環境
MacBook Pro (2.3 GHz 8コアIntel Core i9)
macOS 14.0(23A344)
Homebrew 4.3.8
gh 2.52.0
目次
Docker実行用のコマンド(Terminal)
Terminl
docker run -d --name local-mysql -e MYSQL_ROOT_PASSWORD=password -e MYSQL_USER=myuser -e MYSQL_PASSWORD=password -p 13306:3306 mysql:latest
解説
使用しているDockerコマンド
-
run:コンテナの実行(生成/起動/停止) -
mysql:latest:使用するDockerイメージとして mysql の最新バージョンを指定※1
使用しているDockerオプション
-
-d:コンテナをバックグラウンド実行 -
--name:コンテナ前- 名前を付けない場合、ランダムでコンテナの名前が付けられる
-
-e:環境変数※2 -
-p:ポート番号- 記法:
-p {ホストのポート番号}:{コンテナ内のポート番号} - ホストのポート
13306(Dockerコンテナ(任意)のポート番号)をコンテナのポート3306(MySQLのポート番号)にマッピングしている。
- 記法:
※1:Dockerイメージの指定について
Docker Hub(Dockerイメージの格納先)には様々なDockerイメージが公開されており、runコマンドの末尾につけることで、イメージを指定できる。
例えば、↓はNginxのDockerイメージを使ってWebサーバーを立ち上げるコマンド。
docker run --name some-nginx -d -p 8080:80 nginx
MySQL接続用のコマンド(Terminal(Docker上))※3
Terminal(Docker上)
mysql -h localhost -P 13306 -u myuser -p password
使用しているMySQLオプション
-
-h:ホスト名の指定 -
-P:コンテナの名前 -
-u:ユーザ名の指定 -
-p:パスワードの指定
※3:下記赤線のTerminalアイコンから開く
参考リンク
↓近い目的で検討している(PostgreSQL)
