docker 内のイメージは自動的に更新されますか?
Docker 内のイメージは自動的に更新されます。Watchtower ツールを使用して、イメージを自動的に更新できます。Watchtower は、実行中のコンテナー イメージが更新されたかどうかを監視できるツールです。イメージとリモート イメージを使用すると、現在のコンテナの実行パラメータを使用して新しいイメージで新しいコンテナを自動的に再作成し、古いコンテナを削除できます。
このチュートリアルの動作環境: linux7.3 システム、docker バージョン 19.03、Dell G3 コンピューター。
Docker イメージの自動更新
watchtower は、実行中のコンテナイメージが更新されたかどうかを監視できるツールで、ローカルイメージとリモートイメージに差異がある場合、現在のコンテナイメージが更新されます。パラメーターを実行して、新しいイメージを使用して新しいコンテナーを再作成し、古いコンテナーを削除します。
Docker を使用する場合、一部のイメージを頻繁に更新する必要がある場合があります。通常、コンテナーを手動で更新するのは面倒で、次の 4 つの手順が必要です:
1. コンテナーを停止します docker stop
2. コンテナーを削除 docker rm
3. イメージの更新ステータスを確認し、イメージを更新します docker pull
4. コンテナーを再起動しますdocker run ……
コンテナの数は少ない方が良いため、更新が必要なコンテナの数が多い場合、膨大な作業負荷が発生します。次に、コンテナを自動的に更新する方法を紹介します。この方法は、Synology の Docker にも適用できます。
Watchtower は、実行中のコンテナーを監視し、それらのコンテナーが最初に起動されたときのイメージを更新する必要があるかどうかを監視します。 Watchtower はイメージが変更されたことを検出すると、新しいイメージを使用し、同じパラメータを使用して対応するコンテナを自動的に再起動します。同時に、Watchtower 自体も Docker イメージとしてパッケージ化されており、Watchtower を使用して 1 行のコマンドですべてのコンテナを監視でき、Watchtower 自体を含むすべてのコンテナが自動的に更新されます。
クイック スタート
Watchtower 自体は Docker イメージとしてパッケージ化されているため、他のコンテナーと同じように実行できます。他の Docker 環境では、Docker コマンドを使用してダウンロードしますイメージを直接参照します。 :
docker pull containrrr/watchtower
Synology の Docker は、レジストリから直接検索してダウンロードできます:
その他の Docker 実行コマンド
docker run -d \ --name watchtower \ -v /var/run/docker.sock:/var/run/docker.sock \
上記のコードを使用すると、Watchtower コンテナーをバックグラウンドで起動し、現在のすべてのイメージの更新を監視できます。 Watchtower は実行中のコンテナーを監視するために Docker API と対話する必要があるため、これを使用して /var/run/docker.sock をコンテナーにマップする場合は -v パラメーターを追加する必要があります。
Synology のスケジュールされたタスクを使用して、Synology で Watchtower を実行します
Synology タスク プランを開き、新しいスケジュールされたタスクのユーザー定義スクリプトを作成し、次のスクリプトを入力して 1 回実行し、すべてのコンテナを更新し、古いコンテナをクリアします。
docker run -d --name watchtower -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower --cleanup --run-once
スケジュールされたタスクで自動的に実行するように設定することも、必要に応じて手動で実行することもできます。その後、Watchtower 自体を含むすべてのコンテナが自動的に更新されます。
オプション パラメータ
デフォルトでは、Watchtower は、それが指す Docker デーモン内で実行されているすべてのコンテナを監視します。ただし、Watchtower の起動時に特定のコンテナーの名前を指定して、それらの特定のコンテナーのみを監視することもできます。例:
docker run -d --name watchtower -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower --cleanup --run-once nginx redis
現時点では、Watchtower は「nginx」と「redis」という名前のコンテナーのみを監視し、他の実行中のコンテナーはすべて無視されます。 Watchtower をバックグラウンドで実行したくない場合は、 --run-once パラメーターを追加すると、Watchtower コンテナーがフォアグラウンドで実行されます。
--cleanup パラメータを使用して、更新後に古いイメージを自動的に削除します。
--monitor-only を使用すると、新しいイメージの監視と通知の送信のみが行われ、コンテナは更新されません
--interval を使用して、更新検出間隔を秒単位で設定します。たとえば、1 時間ごとに更新を確認するには、--interval 3600
です。より具体的な使用方法については、Watchtower の公式ドキュメントを参照してください。ここでは、よく使用される 2 つの方法のみを示します。 Synology は自動的にスケジュールされたタスクを使用できるため、--interval パラメーターを使用する必要はありません。
推奨される学習: 「docker ビデオ チュートリアル 」
以上がdocker 内のイメージは自動的に更新されますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











Dockerコンテナを終了する4つの方法:コンテナ端子でCtrl Dを使用するコンテナターミナルに出口コマンドを入力しますDocker stop< container_name>コマンドを使用するDocker Kill< container_name>ホストターミナルのコマンド(フォース出口)

Docker Containerの起動手順:コンテナ画像を引く:「Docker Pull [Mirror Name]」を実行します。コンテナの作成:「docker create [options] [mirror name] [コマンドとパラメーター]」を使用します。コンテナを起動します:「docker start [container name or id]」を実行します。コンテナのステータスを確認してください:コンテナが「Docker PS」で実行されていることを確認します。

Dockerの外部ホストにファイルをコピーする方法:Docker CPコマンドを使用:Docker CP [Options]< Container Path> <ホストパス>。データボリュームの使用:ホストにディレクトリを作成し、-vパラメーターを使用してコンテナを作成するときにディレクトリをコンテナにマウントして、双方向ファイルの同期を実現します。

すべてのコンテナ(Docker PS)をリストする手順に従って、Dockerコンテナ名を照会できます。コンテナリストをフィルタリングします(GREPコマンドを使用)。コンテナ名(「名前」列にあります)を取得します。

Dockerコンテナを再起動する方法:コンテナID(Docker PS)を取得します。コンテナを停止します(docker stop< container_id>);コンテナを起動します(docker start< container_id>);再起動が成功していることを確認します(Docker PS)。その他の方法:Docker Compose(Docker-Compose Restart)またはDocker API(Dockerドキュメントを参照)。

DockerでMySQLを起動するプロセスは、次の手順で構成されています。MySQLイメージをプルしてコンテナを作成および起動し、ルートユーザーパスワードを設定し、ポート検証接続をマップしてデータベースを作成し、ユーザーはすべての権限をデータベースに付与します。

Dockerでコンテナを作成します。1。画像を引く:Docker Pull [ミラー名]2。コンテナを作成:Docker Run [Options] [Mirror Name] [コマンド]3。コンテナを起動:Docker Start [Container Name]

Dockerログを表示する方法は次のとおりです。たとえば、Docker Logsコマンドを使用します。たとえば、Docker logs container_name docker execコマンドを使用して /bin /shを実行し、logファイルを表示します。 cat /var/log/container_name.log docker-compose -f docker-comのDocker ComposeのDocker-Composeログを使用します。
