©
本文档使用 PHP中文网手册 发布
初始化一个群
docker swarm init [OPTIONS]
名字,简写 | 默认 | 描述 |
---|---|---|
--advertise-addr | 通告地址(格式:<ip | interface>:端口) | |
--autolock | 假 | 启用管理器自动锁定(需要解锁密钥才能启动停止的管理器) |
--availability | active | 节点的可用性(“活动”|“暂停”|“漏”) |
--cert-expiry | 2160h0m0s | 节点证书的有效期(ns | us | ms | s | m | h) |
--data-path-addr | 用于数据路径流量的地址或接口(格式:<ip | interface>) | |
--dispatcher-heartbeat | 5S | 调度员心跳周期(ns | us | ms | s | m | h) |
--external-ca | 一个或多个证书签名端点的规格 | |
--force-new-cluster | 假 | 强制从当前状态创建一个新的群集 |
--listen-addr | 0.0.0.0:2377 | 监听地址(格式:<ip | interface>:端口) |
--max-snapshots | 0 | 要保留的附加木筏快照的数量 |
--snapshot-interval | 10000 | Raft快照之间的日志条目数 |
--task-history-limit | 5 | 任务历史保留限制 |
命令 | 描述 |
---|---|
docker swarm | 管理群 |
命令 | 描述 |
---|---|
docker 群 | 管理根CA |
docker 群初始化 | 初始化一个群 |
docker 群加入 | 加入群体作为节点和/或经理 |
docker 群联合令牌 | 管理联合令牌 |
docker 群离开 | 离开群 |
docker 群解锁 | 解锁群 |
docker 群解锁键 | 管理解锁密钥 |
docker 群更新 | 更新群体 |
初始化一群。此命令所针对的停靠引擎将成为新创建的单节点群中的管理器。
$ docker swarm init --advertise-addr 192.168.99.121Swarm initialized: current node (bvz81updecsj6wjz393c09vti) is now a manager.To add a worker to this swarm, run the following command: docker swarm join \ --token SWMTKN-1-3pu6hszjas19xyp7ghgosyx9k8atbfcr8p2is99znpy26u2lkl-1awxwuwd3z9j1z3puu7rcgdbx \ 172.17.0.2:2377To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.
docker swarm init
生成两个随机令牌,一个工作者令牌和一个经理令牌。当您将新节点加入到群中时,该节点将根据您传递给群集加入的令牌作为工作者或管理者节点加入。
创建群集之后,可以使用以下方法显示或旋转令牌群连接令牌...
--autolock
该标志可以使用加密密钥自动锁定管理者。所有管理员存储的私钥和数据将受到输出中打印的加密密钥的保护,如果没有它,将无法访问。因此,为了在重新启动后激活管理器,存储此密钥非常重要。密钥可以传递docker swarm unlock
给重新激活管理器。自动锁定可以通过运行禁用docker swarm update --autolock=false
。在禁用它之后,加密密钥不再需要启动管理器,并且它将在没有用户干预的情况下自行启动。
--cert-expiry
此标志设置节点证书的有效期。
--dispatcher-heartbeat
此标志设置节点被告知作为周期报告其健康状况的频率。
--external-ca
此标志设置群体使用外部CA颁发节点证书。该值采取的形式protocol=X,url=Y
。值protocol
指定应使用什么协议将签名请求发送到外部CA. 目前,唯一支持的值是cfssl
。该URL指定了应该提交签名请求的端点。
--force-new-cluster
此标志强制已丢失的仲裁的一部分的现有节点作为单个节点管理器重新启动,而不会丢失其数据。
--listen-addr
该节点在此地址上侦听入站群管理器流量。默认是在0.0.0.0:2377上进行监听。也可以指定一个网络接口来侦听该接口的地址; 例如--listen-addr eth0:2377
。
指定端口是可选的。如果该值为裸IP地址或接口名称,则将使用默认端口2377。
--advertise-addr
该标志指定将通告给群集的其他成员进行API访问和覆盖网络的地址。如果未指定,Docker将检查系统是否具有单个IP地址,并将该IP地址与侦听端口一起使用(请参阅参考资料--listen-addr
)。如果系统有多个IP地址,则--advertise-addr
必须指定该地址,以便为经理间通信和覆盖网络选择正确的地址。
也可以指定一个网络接口来通告该接口的地址; 例如--advertise-addr eth0:2377
。
指定端口是可选的。如果该值为裸IP地址或接口名称,则将使用默认端口2377。
--data-path-addr
此标志指定全局范围网络驱动程序将向其他节点发布的地址,以便到达在此节点上运行的容器。使用此参数,就可以将容器的数据流量与集群的管理流量分开。如果未指定,Docker将使用与广告地址相同的IP地址或接口。
--task-history-limit
此标志设置任务历史记录保留限制。
--max-snapshots
除了当前的Raft快照之外,该标志还设置要保留的旧Raft快照的数量。默认情况下,不保留旧的快照。该选项可用于调试,或用于存储swarm状态的旧快照以实现灾难恢复。
--snapshot-interval
该标志指定在Raft快照之间允许的日志条目数量。将其设置为更高的数字将会减少快照次数。快照缩小了Raft日志,并允许更高效地将状态转移给新管理人员。但是,经常拍摄快照会带来性能成本。
--availability
该标志指定节点加入主设备时节点的可用性。可能的可用性值active
,pause
或drain
。
这个标志在某些情况下很有用。例如,群集可能希望具有专用管理器节点,这些节点不用作工作者节点。这可以通过传递--availability=drain
来实现docker swarm init
。