ServerCat を使用してリモート Docker マシンにコンテナをデプロイする方法

ServerCat を使用してリモート Docker マシンにコンテナをデプロイする方法
ドッキングクジラの形をした輸送コンテナ。
画像: セルゲイ・ノビコフ/Adobe Stock

ServerCatは、Linuxサーバーへのリモートアクセスと監視に使える私のお気に入りのツールの一つです。美しくデザインされたUIとユーザーフレンドリーな構造により、誰でもこのツールを使ってリモートLinuxサーバーにアクセスできます。

しかし、ServerCatには他にも巧妙な仕掛けが隠されています。その一つが、接続済みのサポートサーバーへのDockerデプロイを一括実行できる機能です。たった一つのコマンドで、すべてのDockerサーバーにコンテナをデプロイし、それらを監視して、期待通りに動作していることを確認できます。NGINXコンテナをDockerコンテナをホストする複数のサーバーに一括デプロイすることで、まさにこれがいかに簡単かをお見せします。

参照:採用キット: バックエンド開発者(TechRepublic Premium)

ServerCatでコンテナを展開するために必要なもの

macOS デバイスに ServerCat がインストールされ、Docker を実行する Linux ホストが少なくとも 1 つ接続されている必要があります。

ServerCatでコンテナをデプロイする方法

本題に入る前に、ServerCat を使ったコンテナのデプロイは、ポイントアンドクリックだけで済むわけではないことをご承知おきください。コマンドラインからコンテナをデプロイする方法を知っておく必要があるからです。ここでは、比較的シンプルな NGINX コンテナのデプロイ例を紹介します。

まず最初に、macOSデバイスでServerCatを開きます。メインウィンドウの左側のナビゲーションに「実行」エントリが表示されます(図A)。

図A

ServerCat は非常にクリーンで使いやすい UI を提供します。
ServerCat は非常にクリーンで使いやすい UI を提供します。

実行画面 (図 B ) には、上部に利用可能なすべてのホストのリスト、実行コマンド フィールド、および実行ボタンが表示されます。

図B

ServerCat 実行ウィンドウを使用すると、任意のサーバーに対してバッチ実行を行うことができます。
ServerCat 実行ウィンドウを使用すると、任意のサーバーに対してバッチ実行を行うことができます。

これはコンテナのデプロイにのみ使用されるわけではありません。例えば、sudo apt-get upgrade -y Ubuntuベースのサーバー上で実行することもできます。ただし、このデモではコンテナをデプロイします。

上部で、コンテナをデプロイするすべてのDockerサーバーを選択します。次に、「コマンド実行」フィールドに以下を入力します。

docker run --name docker-nginx -p 8080:80 -d nginx

すべての設定が完了したら (図 C )、「実行」をクリックして、選択したホストにコンテナをデプロイします。

図C

NGINX を 2 台の Docker サーバーに同時にデプロイします。
NGINX を 2 台の Docker サーバーに同時にデプロイします。

図 Dからわかるように、1 つのデプロイメントは成功しましたが、もう 1 つは失敗しました。

図D

失敗したデプロイメントと成功したデプロイメント。
失敗したデプロイメントと成功したデプロイメント。

[ホスト] に移動して [Docker Swarm] エントリをダブルクリックすると、docker ps -a ポート 8080 がすでに使用されており、これがエラーの原因となっていることがわかります (図 E )。

図E

私たちの問題が発見されました。
私たちの問題が発見されました。

次に、次のコマンドを使用して、別の外部ポートを使用して別のデプロイメントを試行できます。

docker run --name docker-nginx2 -p 8081:80 -d nginx

docker-nginx という名前は既に使用されているため、docker-nginx2 に名前を変更する必要があります。このコマンドは成功し、NGINX コンテナが Docker Swarm ホストにデプロイされます。

シンプルなDockerデプロイメント

ServerCat のコンテナデプロイツールは、完全なポイントアンドクリック操作ではありませんが、複数のリモート Docker ノードでコンテナを簡単に起動し、監視することができます。Docker CLI のデプロイの基本をご存知であれば、ServerCat を使えばコンテナのデプロイと監視がさらに簡単になります。このオールインワンツールをぜひお試しください。Docker サーバーへのコンテナのバッチ実行にきっと役立つはずです。

TechRepublic Premium の Linux & Docker Coding Bundle で IT 教育を継続しましょう。

Jack Wallen によるビジネス プロフェッショナル向けの最新のテクノロジー アドバイスをすべて知るには、YouTube でTechRepublic の How To Make Tech Work を購読してください。

Tagged: