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の内容です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
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
保存先は、任意の保存先を記述して下さい。上記は自分の環境となります。
1 |
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 ( 任意の保存先 ) にバックアップが作成されます。
リストア
リストアは下記のコマンドで可能
1 |
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
コメントを書く