docker

MYSQL

サーバー

DockerでMysqlコンテナを永続的なデータボリュームコンテナで稼働させる

DockerのMysqlコンテナの可搬性をあげるために、データボリュームコンテナで稼働させてみます。

コンテナ構成

  • Mysqlサーバー:mysql01
  • Mysqlデータコンテナ:mysql-data-01

データボリュームコンテナを起動

[bash]
docker run -it -v /var/lib/mysql --name mysql-data-01 busybox
[/bash]

起動してそのままストップしてしまいますが、正しい挙動なようです。ストレージ機能としては生きています。

Mysqlコンテナをデータボリュームコンテナと連携させて起動

[bash]
docker run --volumes-from mysql-data-01 --name mysql01 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=mysql -e MYSQL_USER=test -e MYSQL_PASSWORD=test -e MYSQL_DATABASE=test_db -d mysql
[/bash]

--volumes-from mysql-data-01 で、データボリュームコンテナとの連携をしています。その他の設定は、通常のMysqlコンテナと同様。

これで、テスト環境->本番環境とDBを移動させる時も、データボリュームコンテナだけ移動させればOK(なはず)。