システムの削除

クラスタ構成のシステムを削除する手順について示します。

クラスタの削除手順

Swarm クラスタのいずれかのマネージャーノード上(以下の例では ke2-server1)で、docker stack rm ke2 コマンドを実行してください。

[ke2-server1]$ docker stack rm ke2
Removing service ke2_jobmngrd
Removing service ke2_kengine
Removing service ke2_kompira
Removing service ke2_nginx
Removing service ke2_rabbitmq
Removing service ke2_redis
Removing config swarm_rabbitmq-config-cluster
Removing config swarm_kompira-config
Removing config swarm_rabbitmq-config-auth
Removing config swarm_kompira-audit
Removing config swarm_rabbitmq-config-ssl
Removing config swarm_bootstrap-rabbitmq
Removing config swarm_nginx-config
Removing network swarm_default

このコマンドを実行すると、クラスタで動作している全てのコンテナが停止して、クラスタスタックと構成サービスの定義などが削除されます。 停止したあとに docker stack ls, docker service ls, docker config ls コマンドを実行すると、いずれも空になっているはずです。

$ docker stack ls
NAME      SERVICES
$ docker service ls
ID        NAME      MODE      REPLICAS   IMAGE     PORTS
$ docker config ls
ID        NAME      CREATED   UPDATED

この状態になると、ノードを再起動したり docker サービスを再起動しても、Kompira サービスは起動しません。

なお、この時点では Swarm クラスタ構成自体は残っています。

$ docker node ls
ID                            HOSTNAME      STATUS    AVAILABILITY   MANAGER STATUS   ENGINE VERSION
l96i39jjjq8ntkzu2p2vvejvf *   ke2-server1   Ready     Active         Reachable        26.1.4
sw6kopnwous6gfz0zg1qcp1ho     ke2-server2   Ready     Active         Leader           26.1.4
0i62egrvpwj0lpittkx9dw9na     ke2-server3   Ready     Active         Reachable        26.1.4

そのため、Swarm クラスタ構成の セットアップ手順 からデプロイしなおすことが出来ます。

コンテナの削除手順

クラスタが停止してもコンテナが残っている場合があります。 docker container ls -a コマンドで停止したものも含めてコンテナの一覧を確認できます。

$ docker container ls -a
CONTAINER ID   IMAGE                                          COMMAND                  CREATED      STATUS    PORTS     NAMES
059775d2d864   kompira.azurecr.io/kompira-enterprise:latest   "docker-entrypoint.s…"   5 days ago   Dead                ke2_kompira.3.chic2oqd0l46t6c6i3q1yd5rk

残っているコンテナを削除したい場合は、docker container prune コマンドで一括削除できます。 本当に削除するか確認されるので、実行する場合は y を入力してください。

$ docker container prune
WARNING! This will remove all stopped containers.
Are you sure you want to continue? [y/N] y
Deleted Containers:
059775d2d864483ba451d268b41e70c8761c9efaf559e7979e65253e91568926

Total reclaimed space: 803.1kB

この手順は、クラスタを構成する各ノードで実施してください。

イメージの削除手順

クラスタを停止してもコンテナイメージは残っています。 docker image ls -a コマンドで全てのコンテナイメージの一覧を確認できます。

$ docker image ls -a
REPOSITORY                                 TAG                IMAGE ID       CREATED        SIZE
kompira.azurecr.io/kompira-enterprise      <none>             95fb2b1e3ef0   7 days ago     503MB
kompira.azurecr.io/kompira-enterprise      <none>             2fc0e8aea9b4   7 days ago     503MB
kompira-enterprise                         2.0.1a1_62f84257   f60f16a921fb   7 days ago     503MB
kompira-enterprise                         2.0.1a1_66ee42a9   c702af2baab6   7 days ago     503MB
kompira.azurecr.io/kompira-enterprise      <none>             3efb4ead515c   8 days ago     503MB
kompira-enterprise                         2.0.0_a4071bf5     eac7265ec11b   2 weeks ago    503MB
kompira-enterprise                         2.0.0_8875d278     75f9622860d7   2 weeks ago    503MB
registry.hub.docker.com/library/rabbitmq   <none>             0ca98669e517   2 weeks ago    141MB
kompira-enterprise                         2.0.0_a3309cf7     0d540ff81113   3 weeks ago    503MB
registry.hub.docker.com/library/rabbitmq   <none>             2262fa9f479a   4 weeks ago    141MB
registry.hub.docker.com/library/rabbitmq   <none>             4083c19b838f   5 weeks ago    141MB
kompira-enterprise                         2.0.0_56cb960d     868774a8f9bf   5 weeks ago    504MB
registry.hub.docker.com/library/nginx      <none>             c7b4f26a7d93   6 weeks ago    43.2MB
registry.hub.docker.com/library/nginx      <none>             0f0eda053dc5   6 weeks ago    43.3MB
kompira.azurecr.io/kompira-enterprise      <none>             de61c5570c0d   7 weeks ago    504MB
registry.hub.docker.com/library/rabbitmq   <none>             5d6e30bc0bea   8 weeks ago    141MB
registry.hub.docker.com/library/nginx      <none>             1ae23480369f   3 months ago   43.2MB
registry.hub.docker.com/library/redis      <none>             ab3bbb60f1b6   4 months ago   40.7MB
registry.hub.docker.com/library/redis      <none>             97ed3031282d   4 months ago   40.7MB

残っているコンテナイメージを削除したい場合は、docker image prune -a コマンドで一括削除できます。 本当に削除するか確認されるので、実行する場合は y を入力してください。

$ docker image prune -a
WARNING! This will remove all images without at least one container associated to them.
Are you sure you want to continue? [y/N] y
Deleted Images:
untagged: registry.hub.docker.com/library/nginx@sha256:a5127daff3d6f4606be3100a252419bfa84fd6ee5cd74d0feaca1a5068f97dcf
deleted: sha256:c7b4f26a7d93f4f1f276c51adb03ef0df54a82de89f254a9aec5c18bf0e45ee9
deleted: sha256:df45629925efee5af98c24cd09fa6eb06f53bf8a31eb6255e25efd729c902e1e
deleted: sha256:e9d09343f346fd7a1ae6dde03c9d2a948dba60c99be0083f703c10acb691a29b
    :
untagged: kompira.azurecr.io/kompira-enterprise@sha256:c40e73309d67cf98eedd111ef783e1350379c280440718b1ec57de8c4e8839a2
deleted: sha256:2fc0e8aea9b48d0f98b64480eb13792baa3da0cddb3716e676a04e0b5f274923
deleted: sha256:27161d5e2678b37f620e2273bdefd619791dc937b711a03c163f6e8fd4a37155
deleted: sha256:d940d53c7b474ee3fdbcc9f1830eb2bb0a2d69f3c35511e491b1228a47c4fe9e
    :

Total reclaimed space: 5.414GB

この手順は、クラスタを構成する各ノードで実施してください。

ボリュームの削除手順

クラスタを停止しても名前付きボリュームは残っています。 docker voluems ls コマンドでボリュームの一覧を確認できます。

$ docker volume ls
DRIVER    VOLUME NAME
local     swarm_kompira_rmq

残っているボリュームを削除したい場合は、docker volume prune -a コマンドで一括削除できます。 本当に削除するか確認されるので、実行する場合は y を入力してください。

$ docker volume prune -a
WARNING! This will remove all local volumes not used by at least one container.
Are you sure you want to continue? [y/N] y
Deleted Volumes:
swarm_kompira_rmq

Total reclaimed space: 1.141MB

この手順は、クラスタを構成する各ノードで実施してください。

ネットワークの削除

クラスタを停止しても Docker のネットワーク定義は残っています。 docker network ls コマンドでネットワークの一覧を確認できます。

$ docker network ls
NETWORK ID     NAME              DRIVER    SCOPE
d43ebc7d365d   bridge            bridge    local
937af22066a7   docker_gwbridge   bridge    local
a2a80d3dca46   host              host      local
uswsxaj23dbt   ingress           overlay   swarm
c0fa71959a20   none              null      local

docker network prune コマンドで、カスタム定義されたネットワークを削除することができます。 ただし Kompira 2.0 ではカスタム定義しているネットワークはありませんので、通常は実際に削除されるネットワークはないはずです。

$ docker network prune
WARNING! This will remove all custom networks not used by at least one container.
Are you sure you want to continue? [y/N] y