Script
Scripts管理者
Docker Stack入門
Docker入門シリーズ、続いてはStack。
バージョン1.25以上で利用可能で、Dockerスタック(複数のコンテナ)を管理する。
Stackコマンド
deploy
Deploy a new stack or update an existing stack
新しいStackをデプロイしたり、既存のStackを更新したりする。
$ docker stack deploy -c docker-compose.yml [stack-name]
Compose-file
ls
List stacks
Stack一覧を表示する。
$ docker stack ls
NAME SERVICES ORCHESTRATOR
webapp 2 Swarm
–format
出力をフォーマットする。
Placeholder | Description |
---|
.Name | Stack name |
.Services | Number of services |
.Orchestrator | Orchestrator name |
.Namespace | Namespace |
$ docker stack ls --format "{{.Name}}: {{.Services}}"
webapp: 2
ps
List the tasks in the stack
StackのTask一覧を表示する。
$ docker stack ps [stack-name]
–filter, -f
フィルタリングして表示する。
Expression | Supported |
---|
id= =xxxx | Swarm / Kubernetes |
name =xxxx | Swarm / Kubernetes |
node =xxxx | Swarm / Kubernetes |
desired-state =xxxx | Swarm / Kubernetes |
$ docker stack ps [stack-name] -f "name=web"
–format
出力をフォーマットする。
Placeholder | Description |
---|
.ID | Task ID |
.Name | Task name |
.Image | Task image |
.Node | Node ID |
.DesiredState | Desired state of the task (running , shutdown , or accepted ) |
.CurrentState | Current state of the task |
.Error | Error |
.Ports | Task published ports |
$ docker stack ps [stack-name] --format '{{.ID}} {{.DesiredState}}'
rm
Remove one or more stacks
1つ以上のStackを削除する。
$ docker stack rm [stack-name]
services
List the services in the stack
StackのService一覧を表示する。
$ docker stack services [stack-name]
–filter, -f
Taskをフィルタリングして表示する。
Expression | Supported |
---|
id =xxxx | Swarm |
label =key=value | Swarm / Kubernetes |
mode =xxxx | Swarm / Kubernetes |
name =xxxx | Kubernetes |
service =xxxx | Kubernetes |
$ docker stack services [stack-name] -f label=key=value
–format
出力をフォーマットする。
Placeholder | Description |
---|
.ID | Service ID |
.Name | Service name |
.Mode | Service mode (replicated, global) |
.Replicas | Service replicas |
.Image | Service image |
$ docker stack services [stack-name] --format "{{.ID}} {{.Name}}"