MariaDBのデータをmysqldumpで取得する
# コンテナの名前を調べる
$ docker ps | grep mariadb
b11692b1c02a mariadb "docker-entrypoint.s…" 3 weeks ago Up 25 hours 3306/tcp core_mysql_1
# mysqldumpでデータを取得・保存する
$ docker run --rm -it --network core_default --link core_mysql_1:mysql mariadb mysqldump -h mysql -uroot -p******** wpdb | gzip > mysqldump-wpdb.dat.gz
# コピる
$ scp mysqldump-all.dat.gz [email protected]:
データをmysqlコマンドで投入する
wordpress.xxxxxxxxxxxx.ap-northeast-1.rds.amazonaws.com
は、予め作っておいたAmazon RDS (MariaDB)のインスタンス。
$ zcat mysqldump-tech.dat.gz | docker run -i --rm mariadb mysql -h wordpress.xxxxxxxxxxxx.ap-northeast-1.rds.amazonaws.com -u kno -p********** tech
docker-compose.yml を修正する
ここではリバースプロキシに https-portal を使ってます。そのうちELB(ALB)を試してみたい。
$ cat docker-compose.yml
version: '2'
services:
https-portal:
image: steveltn/https-portal
ports:
- '80:80'
- '443:443'
links:
- wordpress
restart: always
environment:
DOMAINS: '2502.net -> http://wordpress'
STAGE: production
CLIENT_MAX_BODY_SIZE: 50M
# 元々使ってたエントリ
# mysql:
# image: mariadb
# environment:
# MYSQL_ROOT_PASSWORD: **********
# volumes:
# - /export/mysql/var/lib/mysql:/var/lib/mysql
wordpress:
image: mywordpress
environment:
WORDPRESS_DB_HOST: wordpress.xxxxxxxxxxxx.ap-northeast-1.rds.amazonaws.com
WORDPRESS_DB_NAME: wpdb
WORDPRESS_DB_USER: kno
WORDPRESS_DB_PASSWORD: **********
volumes:
- /export/wordpress/var/www/html:/var/www/html
セキュリティグループに注意
MySQL/Aurora (TCP 3306) がデフォルトでブロックされているので、気付かないとなぜかつながらなくてハマります。