Docker/Dockerで立ち上げたMySQLサーバーに接続する
キーワード
- Docker
- MySQL
関連
したいこと
Dockerで立ち上げたMySQLに別のコンテナから接続したい。
背景としては、データ移行するためのスクリプトの実行を試したいため。Dockerで立ち上げたMySQLコンテナに直接という手もあるけど、これはこれで触らずにおいておきたい。
どうやって
リンクして接続する。
Dockerで立ち上げたMySQLコンテナの名前が『mysqld』であるとして。
$ docker run -it --rm --link mysqld:dbserver mysql bash
MySQLのイメージにはmysqlクライアントもbashもある。
# env | grep DBSERVER
DBSERVER_PORT_3306_TCP_ADDR=172.17.0.2
DBSERVER_ENV_MYSQL_USER=mydb
DBSERVER_ENV_MYSQL_PASSWORD=mydb
DBSERVER_PORT=tcp://172.17.0.2:3306
DBSERVER_ENV_MYSQL_VERSION=5.7.17-1debian8
DBSERVER_PORT_3306_TCP_PROTO=tcp
DBSERVER_PORT_3306_TCP_PORT=3306
DBSERVER_ENV_MYSQL_ROOT_PASSWORD=rootpw
DBSERVER_NAME=/heuristic_wozniak/dbserver
DBSERVER_ENV_TZ=Asia/Tokyo
DBSERVER_ENV_MYSQL_DATABASE=MYDB
DBSERVER_PORT_3306_TCP=tcp://172.17.0.2:3306
DBSERVER_ENV_MYSQL_MAJOR=5.7
DBSERVER_ENV_GOSU_VERSION=1.7
#
# mysql -h$DBSERVER_PORT_3306_TCP_ADDR -u$DBSERVER_ENV_MYSQL_USER -p$DBSERVER_ENV_MYSQL_PASSWORD $DBSERVER_ENV_MYSQL_DATABASE
ノート
後で立ち上げるコンテナでボリュームのマウントをすればスクリプトを試験できそう。
参考
作成日 2017-04-13
