今日は、SynologyNASでDockerコンテナを更新する方法について2つの異なる方法を見ていきます。
先週、SynologyNASにDockerコンテナーをインストールする方法を確認しました。この部分は、独自のチュートリアルに値すると感じたため、除外しました。 Synology NASでコンテナを更新する方法についてはオンラインでさまざまな方法があり、これが私の好ましいアプローチであると述べて、この前置きをします。このアプローチにより、他の多くの「更新」ソリューションでは提供されない新しいバージョンで問題が発生した場合に、完全なロールバック計画が得られます。
私は通常、新しいコンテナーをインストールし、すべてが期待どおりに機能することを確認するために数日間実行してから、古いコンテナーを削除します。問題が発生した場合(以前に新しいバージョンのコンテナで問題が発生したことがあります)、新しいコンテナを削除し、古いコンテナの名前を変更してから、問題なく古いコンテナを使用できるようになります。
アップデートを開始する前に、SynologyNASのdockerフォルダーを必ずバックアップしてください。
Dockerアプリケーションを使用してSynologyNASでDockerコンテナを更新する方法
1.バージョン番号はログインページに直接表示されているため、Nginxプロキシマネージャーを使用してこれを行う方法を表示します。私のコンテナは現在v2.5.0を使用しています。
2.レジストリを開き、更新するコンテナを検索し、それをダブルクリックして最新バージョンをダウンロードします。最新バージョンは既存のバージョンを上書きします。ダウンロードが完了するまでしばらくお待ちください。
3.停止 古いコンテナ、編集 コンテナの名前を変更します。通常はそのままにして、-バックアップを追加します 名前に。
4.コンテナの名前が変更されたら、コンテナを選択してから、設定を選択します 、次に複製 設定 。新しいコンテナに名前を付け(私は通常古い名前を使用します)、適用を選択します その後、コンテナがインストールされます!新しいコンテナを実行すると、最新バージョンが使用されます!
5.これでコンテナがセットアップされました。問題が発生した場合は、新しいコンテナーを削除し、古いコンテナーの名前を(-Backupを削除して)元に戻すと、古いバージョンのDockerコンテナーに完全にロールバックされます。
SynologyNASでDockerComposeコンテナを更新する方法
Docker Composeを使用してコンテナを更新することは、SynologyのGUIを実行することとは少し異なります。 SynologyのGUIを使用して設定を複製すると、技術的にはまったく新しいコンテナが作成され、古いコンテナも保持されます。 Docker Composeは構成ファイルを使用してコンテナーを作成するため、それを行うのは簡単ではありません。
そのため、問題が発生した場合は、事前に計画するよりも、コンテナーを更新して修正する(古いバージョンを使用するようにDocker Composeファイルを更新する)方がほぼ簡単です。もちろんこれは私の個人的な意見です!コンテナのバックアップを取りたい場合は、Synology NASでコンテナのフォルダの名前を変更し、新しい場所にコピーしてから、前回のチュートリアルに示すように新しいコンテナを作成します。
1.実行中のコンテナのリストを取得します。
sudo docker container ls
2.停止 以下のコマンドを実行し、正しいコンテナID に置き換えて、更新するコンテナ 。
sudo docker stop [CONTAINER_ID]
3.DockerComposeファイルが存在するフォルダーに移動します。
cd /volume[#]/docker/[CONTAINER_FOLDER]
4.以下のコマンドを実行します。最初のコマンドは最新のイメージをプルし、2番目のコマンドはパッケージをインストールします。
sudo docker-compose pull sudo docker-compose up --force-recreate --build --detach
5.これで、コンテナが更新されて実行されます!
結論–SynologyNASでDockerコンテナを更新する方法
このチュートリアルでは、SynologyNASでDockerコンテナを更新する方法を示しました。最初に言ったように、これは私の好ましいアプローチであり、それが唯一の方法であるという意味ではありません。
チュートリアルをお読みいただきありがとうございます。いつものように、質問があればコメントに残してください!

DockerコンテナにシンプルなApacheWebサーバーをセットアップする方法

MacでDockerをPodmanに置き換える方法

Kubernetesを使用してサーバー間でDockerコンテナをスケーリングする方法