MySQLのデータをData Vlume Container(busybox)に退避しつつDBコンテナを立てたメモ
docker-compose.yml
docker-composeを使用する場合、以下を追記するだけでした 意外とあっさり構築が終わった(10分ぐらい)
# Data Volume Container
gandamu:
container_name: gandamu
hostname: gandamu
image: busybox
networks:
b0:
ipv4_address: 172.18.0.99
environment:
- "TZ=Asia/Tokyo"
volumes:
- /var/containers/gandamu/var/lib/mysql/:/var/lib/mysql/
# MySQL Server
my-gandamu:
container_name: my-gandamu
hostname: my-gandamu
image: mysql:5.6
networks:
b0:
ipv4_address: 172.18.0.50
environment:
- "TZ=Asia/Tokyo"
- "MYSQL_ROOT_PASSWORD=root"
volumes:
- /var/containers/my-gandamu/etc/mysql/conf.d/:/etc/mysql/conf.d/
volumes_from:
- gandamu
gandamu
がbusyboxのDataVolumeContainerで、my-gandamu
がMySQLDBサーバです
他のコンテナからMySQLへの接続はmysql-clientを使う場合は以下でいけます
$ mysql -h my-gandamu -uroot -proot
MySQLサーバの設定を追加したい場合は、上記の場合は/var/containers/my-gandamu/etc/mysql/conf.d/
に、末尾が.cnfのファイルを置いとけば起動時に反映されます