Docker版Artifactoryを7.71.23から7.111.12へバージョンアップする
はじめに
Dockerコンテナで動作しているJFrog Artifactoryを、以下のバージョンへ更新します。
7.71.23
↓
7.111.12
データベースは、前の記事で移行したPostgreSQL 15を継続して使用します。
更新前:Artifactory 7.71.23 + PostgreSQL 15
更新後:Artifactory 7.111.12 + PostgreSQL 15
Docker Composeは使用せず、ArtifactoryのDockerイメージを差し替えます。
前提環境
| 項目 | 設定 |
|---|---|
| 更新前 | Artifactory 7.71.23 |
| 更新後 | Artifactory 7.111.12 |
| データベース | PostgreSQL 15 |
| 実行方式 | Docker |
| Artifactoryコンテナ | artifactory |
| PostgreSQLコンテナ | artifactory-db |
| Dockerネットワーク | artifactory-network |
| 永続化先 | /opt/jfrog/artifactory/var |
現在の設定確認
現在のイメージを確認します。
docker inspect artifactory \
--format '{{.Config.Image}}'
マウント、ネットワーク、ポートを確認します。
docker inspect artifactory \
--format '{{json .Mounts}}'
docker inspect artifactory \
--format '{{json .NetworkSettings.Networks}}'
docker port artifactory
現在の設定を保存します。
sudo mkdir -p /opt/jfrog/backup/7.71.23
docker inspect artifactory \
> /opt/jfrog/backup/7.71.23/artifactory-inspect.json
新しいコンテナでも、現在使用しているVolume、環境変数、証明書、Proxy設定などを引き継ぎます。
PostgreSQLのバックアップ
docker exec artifactory-db \
pg_dump \
-U artifactory \
-d artifactory \
-Fc \
> /opt/jfrog/backup/7.71.23/artifactory.dump
バックアップを確認します。
ls -lh /opt/jfrog/backup/7.71.23/artifactory.dump
Artifactoryデータのバックアップ
Artifactoryを停止します。
docker stop artifactory
docker stop artifactory
永続化ディレクトリをバックアップします。
sudo tar \
-C /opt/jfrog/artifactory \
-czf /opt/jfrog/backup/7.71.23/artifactory-var.tar.gz \
var
新しいイメージの取得
docker pull \
releases-docker.jfrog.io/jfrog/artifactory-pro:7.111.12
確認します。
docker image ls \
releases-docker.jfrog.io/jfrog/artifactory-pro
動作確認が完了するまで、7.71.23のイメージは削除しません。
旧コンテナの削除
docker rm artifactory
ホスト側の永続化ディレクトリは削除しません。
docker rm -vは使用しないでください。
新しいコンテナの起動
旧コンテナと同じ設定で、イメージだけを7.111.12へ変更します。
docker run -d \
--name artifactory \
--network artifactory-network \
-p 8081:8081 \
-p 8082:8082 \
-v /opt/jfrog/artifactory/var:/var/opt/jfrog/artifactory \
releases-docker.jfrog.io/jfrog/artifactory-pro:7.111.12
起動ログの確認
docker logs -f artifactory
初回起動では、データベーススキーマの更新が実行される場合があります。
更新中は、ArtifactoryやPostgreSQLのコンテナを停止しないでください。
動作確認
以下を確認します。
- Web UIへのログイン
- Local/Remote/Virtual Repository
- ファイルのアップロードとダウンロード
- ユーザーとPermission
- ライセンス
- その他設定など
7.111.12ではUIデザインが少し変わり、下図のようになります。
