[Dockerシリーズ]IDEAを使用してDockerイメージとコンテナサービスをリモート管理する

コマンドラインを使用してサーバーイメージとコンテナーを管理することは、運用および保守担当者にとって最も一般的な方法ですが、Dockerをリモートで操作したり、Dockerに精通していない技術担当者(構成管理者、テスター)に機能を提供したりする必要がある場合があります。この場合、インターフェースが必要です。Dockerを操作するためのグラフィカルインターフェイスを提供することは、コマンドラインを使用するよりも実際に直接的で簡単です。そのため、多くのメーカーは、Portainer、Docker UI、ShipyardなどのDockerRESTfulAPIに基づくDockerコンテナイメージ管理用のグラフィカルユーザーインターフェイスをユーザーに提供しています。この記事では、これらの大物を紹介しませんが、IDEAエディターでDockerコンテナーとイメージを管理できる単純なIDEAプラグインを紹介します。

Dockerは、リモートサービスへのアクセスを提供します。つまり、docker REST API(RESTful HTTP APIを介して、外部操作コマンドエントリが提供されます)。

まず、Dockerリモートアクセスサービスを開きます

最初に明確にする必要があるのは、IDEAエディター(リモートワークホスト)を介したサーバー上のDockerイメージとコンテナーの管理は、リモートサービスアクセス(つまり、ネットワークを介したREST APIへのアクセス)であるということです。dockerデーモンはデフォルトではリモートアクセスを提供しません。構成ファイルを変更する必要がありますvim /usr/lib/systemd/system/docker.service。これは、dockerリモートアクセスサービスを有効にするための最初のステップです。0.0.0.0:2375現在のホスト上のすべてのネットワークカードがポート2375でリッスンしていることを示します。

#修改ExecStart这行
ExecStart=/usr/bin/dockerd -H fd:// -H tcp://0.0.0.0:2375  -H unix:///var/run/docker.sock  --containerd=/run/containerd/containerd.sock

2番目のステップは、構成ファイルをリロードしてdockerデーモンを再起動し、以下のコマンドを使用して、リモートアクセスサービスを正しく提供できるかどうかを確認することです。または、ブラウザアクセスで確認できますhttp://<docker宿主机ip>:2375/info。応答結果がある場合は正しいです。JSONDockerサービスのステータスと構成情報を返します。

#重新加载配置文件,并重启docker守护进程
systemctl daemon-reload && systemctl restart docker

#查看端口是否开启,有一行记录显示2375端口被监听,即正确
netstat -nptl|grep 2375;

サーバーのファイアウォールがポート2375アクセスを開かない場合は、次のコマンドを使用してポート2375を開くようにしてください(注:次のコマンドラインはCentOS7および8ディストリビューションに適用され、他のLinuxディストリビューションの場合はコマンド異なる場合があります)。

firewall-cmd --zone=public --add-port=2375/tcp --permanent;   #配置开放端口
firewall-cmd --reload;   #重新加载配置

2.IDEAはDokcerプラグインをインストールします

次に、IDEAエディターが既にインストールされている場合は、もちろん、リモートワークホストのIDEAエディターにプラグインをインストールします。次の図に示す手順に従って、dockerプラグインをインストールします。[ファイル]->[設定]->[プラグイン]->[Dockerの検索]->[インストール]。プラグインをインストールしたら、通常、IDEAエディターを再起動する必要があります。私のIDEAバージョンは2021.3です。このプラグインはデフォルトで統合されており、インストールする必要はありません。Docker関連のプラグインをたくさん検索できます。写真のクジラのアイコンを覚えておいてください。これが私たちに必要なものです。

次の図に示すように、Dockerリモートアクセスサービスを構成し、エンジンAPI URLtcp://<远程docker服务器IP>:2375を入力して、構成を保存します。

プラグインは構成をインストールして保存します。完了すると、新しいタブウィンドウが表示され、上記の構成サービスのコンテナー(コンテナー)、イメージ(ミラー)、ネットワーク(ネットワーク)、およびボリューム(データボリューム)を管理します。含まれているコンテナの数、コンテナの実行ステータス、コンテナのデータボリューム、ポートマッピング、およびその他の情報を確認できます。基本的な画像情報、画像の削除、インポートおよびエクスポート操作もサポートされています。Dockerネットワークの管理、データ量の管理、基本的にDockerスタンドアロンサービスのほぼすべての管理機能をカバーすることもできます。

したがって、IDEAプラグインは非常に強力です。dockerを使用していくつかの環境を構築する場合は、それを使用するのがほぼ最も便利です。エンタープライズレベルのサービスクラスターを管理している場合でも、ランチャーなどのより高度なグラフィカルインターフェイス管理ツールが必要です。記事の最後で、著者は非常に重要なコンテンツも見逃していると言わなければなりません。つまり、dockerはHTTP RESTful APIをリモートで提供します。これは、セキュリティ対策がないと非常に危険な動作です。後で、作成者はDockerリモートアクセスサービスに証明書を追加する方法を紹介します。証明書のないリモートアクセス要求は拒否され、HTTPSがネットワークデータ送信に使用されます。

おすすめ

転載: blog.csdn.net/hanxiaotongtong/article/details/124240589