目的
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)