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 サイトの他の関連記事を参照してください。

DockerとKubernetesを使用して、スケーラブルなアプリケーションを構築します。 1)dockerfileを使用してコンテナ画像を作成します。2)Kubectlコマンドを介してKubernetesの展開とサービス、3)Horizontalpodautoscalerを使用して自動スケーリングを実現し、それにより効率的でスケーラブルなアプリケーションアーキテクチャを構築します。

DockerとKubernetesの主な違いは、Dockerがコンテナ化に使用され、Kubernetesはコンテナオーケストレーションに使用されることです。 1.Dockerは、アプリケーションを開発、テスト、展開し、コンテナを介して分離とリソースの制限を実装するための一貫した環境を提供します。 2。Kubernetesは、コンテナ化されたアプリケーションを管理し、自動化された展開、拡張、管理機能を提供し、負荷分散と自動スケーリングをサポートします。この2つの組み合わせは、アプリケーションの展開と管理の効率を改善できます。

LinuxにDockerをインストールして構成するには、システムが64ビットとカーネルバージョン3.10以上であることを確認する必要があります。コマンド「Sudoapt-GetUpDate」を使用し、コマンド「Sudoapt-GetUpDate」でインストールし、「Sudoapt-GetUpDate」で検証します。 Dockerは、Linuxカーネルの名前空間とコントロールグループを使用して、コンテナの分離とリソースの制限を実現します。画像は読み取り専用テンプレートであり、コンテナを変更できます。使用法の例には、NGINXサーバーの実行やカスタムDockerFilesを使用した画像の作成が含まれます。一般

Dockerを使用する理由は、アプリケーションをパッケージ化、配布、および実行するための効率的でポータブルで一貫した環境を提供するからです。 1)Dockerは、開発者がアプリケーションとその依存関係を軽量のポータブルコンテナにパッケージ化できるようにするコンテナ化されたプラットフォームです。 2)Linuxコンテナテクノロジーとジョイントファイルシステムに基づいて、迅速な起動と効率的な操作を確保しています。 3)Dockerは、マルチステージの構造をサポートし、画像サイズと展開速度を最適化します。 4)Dockerを使用すると、開発と展開プロセスを簡素化し、効率を改善し、環境全体の一貫性を確保できます。

実際のプロジェクトのDockerのアプリケーションシナリオには、展開の簡素化、マルチコンテナーアプリケーションの管理、パフォーマンスの最適化が含まれます。 1.Dockerは、dockerfileを使用してnode.jsアプリケーションを展開するなど、アプリケーションの展開を簡素化します。 2。DockerComposeは、マイクロサービスアーキテクチャのWebやデータベースサービスなどのマルチコンテナーアプリケーションを管理しています。 3.パフォーマンス最適化は、マルチステージ構造を使用して画像サイズを縮小し、健康チェックを通じてコンテナのステータスを監視します。

小さなプロジェクトまたは開発環境でDockerを選択し、大規模なプロジェクトまたは生産環境でKubernetesを選択します。 1.ドッカーは、迅速な反復とテストに適しています。2。Kubernetesは、大規模なアプリケーションの管理と拡張に適した強力なコンテナオーケストレーション機能を提供します。

Linuxは、豊富なツールとコミュニティサポートを提供するネイティブプラットフォームであるため、LinuxでDockerが重要です。 1. docker:sudoapt-getupdateとsudoapt-getinstalldocker-cedocker-ce-clicotainerd.ioを使用します。 2。コンテナの作成と管理:Dockerrun-D-Namemynginx-P80:80NginxなどのDockerrunコマンドを使用します。 3。DockerFileを書き込み:画像サイズを最適化し、マルチステージ構造を使用します。 4。最適化とデバッグ:DockerLogsとDockerexを使用します

Dockerはコンテナ化ツールであり、Kubernetesはコンテナオーケストレーションツールです。 1. Dockerパッケージアプリケーションとその依存関係は、Docker対応環境で実行できるコンテナに依存します。 2。Kubernetesはこれらのコンテナを管理し、自動展開、スケーリング、管理を実装し、アプリケーションを効率的に実行します。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

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

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

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

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

ホットトピック









