はじめに
この実験では、Docker サービスの作成と削除を行うことで、サービスを管理する方法を学びます。まずは、alpine イメージに基づいたシンプルなサービスを作成し、そこで ping コマンドを実行します。
サービスを作成した後、docker service ls コマンドを使用してアクティブなサービスをリストアップすることで、サービスが正常に作成されたことを確認します。最後に、docker service rm コマンドを使用してサービスを削除し、再度サービスをリストアップすることで削除を確認します。この実践的な演習を通じて、基本的な Docker サービス管理の実務経験を積むことができます。
サンプルサービスを作成する
このステップでは、シンプルな Docker サービスを作成します。Docker サービスは、特定の機能を提供するために協働するコンテナのグループです。docker service create コマンドを使用して、alpine イメージに基づくサービスを作成します。
まず、alpine イメージを取得しましょう。環境には Docker がインストールされていますが、すべてのイメージが事前に取得されているとは限りません。
docker pull alpine
イメージが取得中であること、またはすでに利用可能であることを示す出力が表示されるはずです。
次に、alpine イメージを使用して my-alpine-service という名前のサービスを作成し、ping docker.com コマンドを実行します。このサービスは単一のレプリカ(1 つのコンテナ)で構成されます。
docker service create --name my-alpine-service alpine ping docker.com
コマンドを実行すると、Docker Swarm がサービスを作成し、コンテナを起動します。サービスの作成が確認される出力が表示され、その ID も含まれます。
サービスの作成を確認するために一覧表示する
前のステップで、Docker サービスを作成しました。ここでは、アクティブなサービスを一覧表示することで、サービスが正常に作成されたことを確認します。
Docker サービスを一覧表示するには、docker service ls コマンドを使用します。このコマンドを実行すると、Docker Swarm で実行中のすべてのサービスの一覧が表示されます。
docker service ls
作成した my-alpine-service が表示される、以下のような出力が表示されるはずです。
ID NAME MODE REPLICAS IMAGE PORTS
[service_id] my-alpine-service replicated 1/1 alpine:latest
この出力には、サービスの ID、名前、モード(レプリケートまたはグローバル)、レプリカの数(希望数/実行数)、使用しているイメージなど、サービスに関する情報が表示されます。REPLICAS の下にある 1/1 は、1 つのレプリカが希望され、現在 1 つが実行中であることを示しています。
サンプルサービスを削除する
このステップでは、前のステップで作成した Docker サービスを削除します。サービスを削除すると、そのサービスに関連付けられたすべてのコンテナが停止され、削除されます。
Docker サービスを削除するには、docker service rm コマンドの後にサービス名または ID を指定します。ここではサービス名 my-alpine-service を使用します。
docker service rm my-alpine-service
サービスが削除されたことを確認する出力が表示されるはずで、通常は削除されたサービス名または ID が表示されます。
my-alpine-service
このコマンドは、Docker Swarm に対してサービスを終了し、関連するリソースをクリーンアップするよう指示します。
サービスの削除を確認するために一覧表示する
前のステップで、my-alpine-service を削除しました。ここでは、このサービスがアクティブなサービスの一覧にもはや表示されないことを確認します。
再度 docker service ls コマンドを使用してサービスを一覧表示します。
docker service ls
今回の出力には my-alpine-service が含まれないはずです。他に実行中のサービスがない場合、出力にはヘッダー行のみが表示されることがあります。
ID NAME MODE REPLICAS IMAGE PORTS
このような出力、または my-alpine-service が含まれない同様の出力が表示された場合、サービスが正常に削除されたことが確認できます。
まとめ
この実験では、コマンドラインを使用して Docker サービスを管理する方法を学びました。まず、alpine イメージに基づいて my-alpine-service という名前のサンプルサービスを作成し、docker service create を使用して特定のコマンドとレプリカ数でサービスを定義する方法を実演しました。
次に、docker service ls を使用してアクティブなサービスを一覧表示することで、サービスが正常に作成されたことを確認し、サービスの ID、名前、レプリカの状態などの詳細を確認しました。最後に、docker service rm コマンドを使用してサービスを削除する方法を学び、再度サービスを一覧表示することで削除を検証しました。



