> For AI agents: the complete documentation index is available at /resource/ucidm/docs/on-premise/1.9.0/llms.txt, the full documentation bundle is available at /resource/ucidm/docs/on-premise/1.9.0/llms-full.txt.

# バックアップ \{#backup}

## バックアップの設定 \{#backup-config}

次の 4 つのデータをバックアップします。

- mongodb のドキュメントデータ
- rabbitmq の queue 一覧
- ucidm ホームディレクトリ配下のファイル群
- コンテナイメージのリビジョン一覧

バックアップスクリプトは以下に存在します。

```bash
$ /opt/osstech/bin/ucidm-backup
```

必要に応じてバックアップスクリプトの動作に関係する設定を変更します。

```
$ vi /opt/osstech/etc/ucidm/ucidm-backup.conf
```

- `backup_dir="/opt/osstech/var/backup/ucidm"`
  - バックアップのアーカイブを格納するディレクトリ
- `backup_maxage="3"`
  - バックアップのアーカイブを保持する世代数

フォーマットは `systemd.exec` の `EnvironmentFile=` を前提としています。
例として `=` の前後にスペースが含まれていた場合は読み込みに失敗します。

# バックアップ手順 \{#backup-process}

バックアップスクリプトを実行します。

バックアップスクリプト内で `docker` コマンドを実行します。
環境に応じて `docker` コマンドが実行可能なユーザーで作業してください。

```bash
$ /opt/osstech/bin/ucidm-backup
```

正常にバックアップ処理が終了すると、`backup_home` で指定したディレクトリ配下に `tar.zst` ファイルとして作成されます。

```
$ ls -l /opt/osstech/var/backup/ucidm/
total 591492
-rw-r--r--. 1 ucidm ucidm 605686941 Nov 27 17:33 ucidm-backup-20241127173235.tar.zst
```

バックアップの内容が適切かどうか、アーカイブのファイル一覧を確認します。

```
$ tar tvf /opt/osstech/var/backup/ucidm/ucidm-backup-20241127173235.tar.zst
```

## 定期的なバックアップ実行の設定 \{#backup-cron-config}

`/opt/osstech/bin/ucidm-backup` に設定したバックアップスクリプトを使って定期実行する設定を行います。

osstech-ucidm の rpm をインストールしたときに `/etc/cron.d/ucidm-backup` というcronの設定ファイルが配置されます。

デフォルト設定では毎日 4:30 に実行されます。

```bash
$ cat /etc/cron.d/ucidm-backup
30 4 * * * ucidm /opt/osstech/bin/ucidm-backup
```

バックアップ取得時刻を変更する際は、本ファイルの設定を変更してください。
