非常教程

Docker 17参考手册

引擎: CLI | Engine: CLI

docker swarm ca

描述

管理根CA

使用

docker swarm ca [OPTIONS]

备选方案

名字,简写

默认

描述

--ca-cert

用于新集群的PEM格式的根CA证书的路径

--ca-key

用于新集群的PEM格式化根CA密钥的路径

--cert-expiry

2160h0m0s

节点证书的有效期(ns | us | ms | s | m | h)

--detach, -d

立即退出,而不是等待根旋转收敛

--external-ca

一个或多个证书签名端点的规格

--quiet, -q

抑制进度输出

--rotate

旋转丛集CA - 如果未提供证书或密钥,则会生成新的证书或密钥

父命令

命令

描述

docker swarm

管理群

相关命令

命令

描述

docker 群

管理根CA

docker 群初始化

初始化一个群

docker 群加入

加入群体作为节点和/或经理

docker 群联合令牌

管理联合令牌

docker 群离开

离开群

docker 群解锁

解锁群

docker 群解锁键

管理解锁密钥

docker 群更新

更新群体

扩展描述

查看或旋转当前群集CA证书。此命令必须针对管理器节点。

实例

运行docker swarm ca命令,没有任何选项可以查看PEM格式的当前根CA证书。

$ docker swarm ca
-----BEGIN CERTIFICATE-----
MIIBazCCARCgAwIBAgIUJPzo67QC7g8Ebg2ansjkZ8CbmaswCgYIKoZIzj0EAwIw
EzERMA8GA1UEAxMIc3dhcm0tY2EwHhcNMTcwNTAzMTcxMDAwWhcNMzcwNDI4MTcx
MDAwWjATMREwDwYDVQQDEwhzd2FybS1jYTBZMBMGByqGSM49AgEGCCqGSM49AwEH
A0IABKL6/C0sihYEb935wVPRA8MqzPLn3jzou0OJRXHsCLcVExigrMdgmLCC+Va4
+sJ+SLVO1eQbvLHH8uuDdF/QOU6jQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMB
Af8EBTADAQH/MB0GA1UdDgQWBBSfUy5bjUnBAx/B0GkOBKp91XvxzjAKBggqhkjO
PQQDAgNJADBGAiEAnbvh0puOS5R/qvy1PMHY1iksYKh2acsGLtL/jAIvO4ACIQCi
lIwQqLkJ48SQqCjG1DBTSBsHmMSRT+6mE2My+Z3GKA==
-----END CERTIFICATE-----

传递该--rotate标志(以及可选的a --ca-cert,连同一个--ca-key--external-ca参数标志),以便旋转当前群根CA.

$ docker swarm ca --rotate
desired root digest: sha256:05da740cf2577a25224c53019e2cce99bcc5ba09664ad6bb2a9425d9ebd1b53e
  rotated TLS certificates:  [=========================>                         ] 1/2 nodes
  rotated CA certificates:   [>                                                  ] 0/2 nodes

一旦旋转os完成(所有进度条完成),将打印当前的CA证书:

$ docker swarm ca --rotate
desired root digest: sha256:05da740cf2577a25224c53019e2cce99bcc5ba09664ad6bb2a9425d9ebd1b53e
  rotated TLS certificates:  [==================================================>] 2/2 nodes
  rotated CA certificates:   [==================================================>] 2/2 nodes
-----BEGIN CERTIFICATE-----
MIIBazCCARCgAwIBAgIUFynG04h5Rrl4lKyA4/E65tYKg8IwCgYIKoZIzj0EAwIw
EzERMA8GA1UEAxMIc3dhcm0tY2EwHhcNMTcwNTE2MDAxMDAwWhcNMzcwNTExMDAx
MDAwWjATMREwDwYDVQQDEwhzd2FybS1jYTBZMBMGByqGSM49AgEGCCqGSM49AwEH
A0IABC2DuNrIETP7C7lfiEPk39tWaaU0I2RumUP4fX4+3m+87j0DU0CsemUaaOG6
+PxHhGu2VXQ4c9pctPHgf7vWeVajQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMB
Af8EBTADAQH/MB0GA1UdDgQWBBSEL02z6mCI3SmMDmITMr12qCRY2jAKBggqhkjO
PQQDAgNJADBGAiEA263Eb52+825EeNQZM0AME+aoH1319Zp9/J5ijILW+6ACIQCg
gyg5u9Iliel99l7SuMhNeLkrU7fXs+Of1nTyyM73ig==
-----END CERTIFICATE-----

--rotate

如果一个或多个群集管理器已被破坏,则建议使用根CA旋转,以便这些管理器无法再连接到群集中的任何其他节点或受其信任。

或者,可以使用根CA旋转来将群集CA控制权授予外部CA,或从外部CA获取控制权。

--rotate标志不需要任何参数进行轮换,但您可以选择指定证书和密钥,或者证书和外部CA URL,并且将使用这些参数代替自动生成的证书/密钥对。

由于根CA密钥应该保密,如果提供,通过CLI或API查看群集任何信息时都不可见。

直到所有注册节点都旋转了他们的TLS证书后,根CA轮换才能完成。如果旋转没有在合理的时间内完成,请尝试运行docker node ls --format {{.ID}} {{.Hostname}} {{.Status}} {{.TLSStatus}}以查看是否有节点关闭或无法旋转TLS证书。

--detach

启动根CA旋转,但不要等待旋转的完成或显示旋转的进度。

引擎: CLI | Engine: CLI相关

1.守护进程CLI参考(dockerd)(引擎) | Daemon CLI reference (dockerd) (Engine)
2.docker
3.docker attach
4.docker build
5.docker checkpoint
6.docker checkpoint create
7.docker checkpoint ls
8.docker checkpoint rm
9.docker commit
10.docker config
11.docker config create
12.docker config inspect
13.docker config ls
14.docker config rm
15.docker container
16.docker container attach
17.docker container commit
18.docker container cp
19.docker container create
20.docker container diff
21.docker container exec
22.docker container export
23.docker container inspect
24.docker container kill
25.docker container logs
26.docker container ls
27.docker container pause
28.docker container port
29.docker container prune
30.docker container rename
31.docker container restart
32.docker container rm
33.docker container run
34.docker container start
35.docker container stats
36.docker container stop
37.docker container top
38.docker container unpause
39.docker container update
40.docker container wait
41.docker cp
42.docker create
43.docker deploy
44.docker diff
45.docker events
46.docker exec
47.docker export
48.docker history
49.docker image
50.docker image build
51.docker image history
52.docker image import
53.docker image inspect
54.docker image load
55.docker image ls
56.docker image prune
57.docker image pull
58.docker image push
59.docker image rm
60.docker image save
61.docker image tag
62.docker images
63.docker import
64.docker info
65.docker inspect
66.docker kill
67.docker load
68.docker login
69.docker logout
70.docker logs
71.docker network
72.docker network connect
73.docker network create
74.docker network disconnect
75.docker network inspect
76.docker network ls
77.docker network prune
78.docker network rm
79.docker node
80.docker node demote
81.docker node inspect
82.docker node ls
83.docker node promote
84.docker node ps
85.docker node rm
86.docker node update
87.docker pause
88.docker plugin
89.docker plugin create
90.docker plugin disable
91.docker plugin enable
92.docker plugin inspect
93.docker plugin install
94.docker plugin ls
95.docker plugin push
96.docker plugin rm
97.docker plugin set
98.docker plugin upgrade
99.docker port
100.docker ps
Docker 17

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

主页 https://docker.com/
源码 https://github.com/docker/docker
版本 17
发布版本 17.06