docker PostgreSQL バックアップをcronで定期的に実行する

docker PostgreSQL バックアップをcronで定期的に実行する

dockerで構築したPostgreSQLを、cronで定期的にバックアップするまでの手順を記述してます。

環境

  • OS Rocky Linux release 8.4 (Green Obsidian)
  • docker 20.10.7
  • PostgreSQL 11.12

バックアップ用のシェルを作成

シェルを作成します。シェル用のディレクトリを作成します。
※ここではrootで作業してます。

作成したディレクトリに移動して、

シェルを作成します。
※ここでは「postgresBackup.sh」という名前で作成してます。

シェルの内容は、以下となります。

コンテナ名は、「docker ps」で確認可能です。

実行権限を付与します。

一度、実行してみてバックアップファイルが作成できる確認してみます。

cron設定

まずはcronを有効にします。

次に「cron.d」を作成します。

ここでは、テスト用に1分周期で作成します。

ログを確認して、実行されているかチェックします。

バックアップも作成されていることを確認します。

あとは、設定したい実行時間に変更すれば終わりです。
※ここでは、毎日夜中の3時に設定してます。