Closed3

Dockerイメージ更新手順

でぶねこでぶねこ

「docker compose」を利用して動作させているコンテナのイメージを最新に更新をさせたくなったので、今後のために手順を記録する。

でぶねこでぶねこ

コンテナイメージのダウンロード

sudo docker pull [イメージ名] 

コンテナの更新

この手順だと一時的にサービスが停止するので注意。

sudo docker compose down
sudo docker compose build
sudo docker compose up -d

一括で行う

sudo docker compose down
sudo docker compose up --build -d 

古いイメージの削除

sudo docker rmi [イメージID]
でぶねこでぶねこ

Nextcloudで更新する際にバージョンを1つずつ更新する必要がある。うっかり2つ以上新しいバージョンを選択してしまうと次のような画面となりアップグレードに失敗してしまう。

自分の場合以下の手順で復旧ができたのでメモ

  • 下記を参考にバージョン表記を今まで動作していたものに修正する
    https://www.code-lab.net/?p=22238
    こちらのサイト様ではひとつ新しいバージョンとなっているが、自分の環境では更新に失敗した
  • ビルドし直す
    今まで動作していたバージョンを指定してコンテナをビルドし直す
■ compose.yaml
image: nextcloud:[バージョン]
■ コマンド
sudo docker compose down
sudo docker compose up --build -d 
  • コマンドによる更新指示
    下記コマンドでコンテナに入り更新を行う
$ sudo docker exec -u 33 -it [コンテナ名] bash
# php occ upgrade
# php occ maintenance:mode --off
  • Nextcloudが動作することを確認
    更新作業前と同じように使用できことを確認
  • 1つ毎にバージョン更新
    上記手順と同様にバージョンの数字を1つずつ上げていく。今回の場合はコンテナ内に入ってコマンドによる更新は不要だった。
このスクラップは2025/03/02にクローズされました