设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 数据 创业者 手机
当前位置: 首页 > 云计算 > 正文

云计算核心技术Docker教程 注册服务器Swarm 服务运作

发布时间:2022-06-30 13:27 所属栏目:124 来源:互联网
导读:与独立容器相比, Swarm 服务提供了几个优势。他们使用声明性模型,这意味着您定义了所需的状态,Docker 将您的服务保持在该状态。服务提供自动负载平衡扩展,以及控制服务分布的能力,以及其他优势。服务还允许您将敏感数据(例如 TLS 证书)存储在 secrets
  与独立容器相比, Swarm 服务提供了几个优势。他们使用声明性模型,这意味着您定义了所需的状态,Docker 将您的服务保持在该状态。服务提供自动负载平衡扩展,以及控制服务分布的能力,以及其他优势。服务还允许您将敏感数据(例如 TLS 证书)存储在 secrets中。
 
  首先,将 TLS 证书和密钥保存为机密:
 
  $ docker secret create domain.crt certs/domain.crt
 
  $ docker secret create domain.key certs/domain.key
 
  接下来,将标签添加到要运行注册表的节点。要获取节点的名称,请使用docker node ls. 用您的节点名称替换 node1下面的名称。
 
  $ docker node update --label-add registry=true node1
 
  接下来,创建服务,授予它访问这两个秘密的权限,并将其限制为仅在带有标签的节点上运行registry=true。除了约束之外,您还指定一次只能运行一个副本。/mnt/registry示例将swarm 节点上的绑定挂载到/var/lib/registry/ 容器内。绑定挂载依赖于预先存在的源目录,因此请确保/mnt/registry存在于node1. docker service create您可能需要在运行以下命令之前创建它。
 
  默认情况下,秘密被挂载到一个服务中/run/secrets/。
 
  $ docker service create \
 
  --name registry \
 
  --secret domain.crt \
 
  --secret domain.key \
 
  --constraint 'node.labels.registry==true' \
 
  --mount type=bind,src=/mnt/registry,dst=/var/lib/registry \
 
  -e REGISTRY_HTTP_ADDR=0.0.0.0:443 \
 
  -e REGISTRY_HTTP_TLS_CERTIFICATE=/run/secrets/domain.crt \
 
  -e REGISTRY_HTTP_TLS_KEY=/run/secrets/domain.key \
 
  --publish published=443,target=443 \
 
  --replicas 1 \
 
  registry:2
 
  您可以在任何 swarm 节点的 443 端口访问该服务。Docker 将请求发送到运行服务的节点。

(编辑:ASP站长网)

    网友评论
    推荐文章
      热点阅读