dockerで作成したphpIPAMのDBをバックアップする

dockerで構築したphpIPAMmysqlで使用しているmysqlコンテナの、DBバックアップを行う手順を記述。ここでは、構築した際に自分が利用したymlの記述に従い変数を設定してます。
環境
- OS CentOS Linux release 7.7.1908 (Core)
- docker 19.03.8
- docker-compose 1.25.4
※IPアドレス 管理ツール「phpIPAM」のdockerでの構築手順はこちら
docker-compose.yml
使用したymlの内容です。
version: '3'
services:
phpipam-web:
image: phpipam/phpipam-www:latest
ports:
- "3030:80"
environment:
- TZ=Asia/Tokyo
- IPAM_DATABASE_HOST=phpipam-mariadb
- IPAM_DATABASE_PASS=my_secret_phpipam_pass
- IPAM_DATABASE_WEBHOST=%
restart: unless-stopped
volumes:
- phpipam-logo:/phpipam/css/images/logo
depends_on:
- phpipam-mariadb
phpipam-cron:
image: phpipam/phpipam-cron:latest
environment:
- TZ=Asia/Tokyo
- IPAM_DATABASE_HOST=phpipam-mariadb
- IPAM_DATABASE_PASS=my_secret_phpipam_pass
- SCAN_INTERVAL=1h
restart: unless-stopped
depends_on:
- phpipam-mariadb
phpipam-mariadb:
image: mariadb:latest
environment:
- MYSQL_ROOT_PASSWORD=my_secret_mysql_root_pass
restart: unless-stopped
volumes:
- phpipam-db-data:/var/lib/mysql
volumes:
phpipam-db-data:
phpipam-logo:
DBバックアップ
上記のymlファイルに記述している内容の通りに、コマンドを作成します。
- コンテナ名 : phpipam_phpipam-mariadb_1
- mysql rootパスワード : my_secret_mysql_root_pass
- バックアップファイル保存先 : /home/testsuser/phpipam/db-back.sql
保存先は、任意の保存先を記述して下さい。上記は自分の環境となります。
docker exec phpipam_phpipam-mariadb_1 sh -c 'exec mysqldump --all-databases -uroot -p"my_secret_mysql_root_pass"' > /home/testsuser/phpipam/db-back.sql
上記コマンドを実行すれば、 /home/testsuser/phpipam/db-back.sql ( 任意の保存先 ) にバックアップが作成されます。
リストア
リストアは下記のコマンドで可能
docker exec -i {コンテナ名} sh -c 'exec mysql -uroot -p"パスワード"' < /home/testsuser/phpipam/db-back.sql
-
前の記事
Windows10 Spring Boot環境をGradleとIntelliJで構築する 2020.05.14
-
次の記事
リモートデスクトップ接続時に全画面状態を解除するやり方 2020.05.15
コメントを書く