首页 > 其他分享 >如何将swarm中的service的端口暴露出去?

如何将swarm中的service的端口暴露出去?

时间:2022-09-20 15:23:07浏览次数:70  
标签:task service 访问 端口 swarm 节点


将swarm中的service端口暴露出去,供集群外的服务进行访问的 2 种方法:

 

1、路由网格

 

也就是在docker create service时,使用下面的参数

 

--publish published=<published_port>,target=<service_port>

 

 

2、将task端口直接映射到节点主机上

 

在创建service时,使用如下的参数,比上面多了个mode=host

 

--publish mode=host,published=<published_port>,target=<service_port>

 

 

这样,外部的请求就可以通过主机的端口对service中的服务进行访问了。

 

3、两者的区别?

 

  • 路由网格,使用任意的主机的端口都可以访问
  • 路由网格,节点上不一定必须运行task (比如:5个节点,一个实例,但是通过任意的节点都能访问)

 

  • 直接端口映射,节点无task,无法访问 (比如:5个节点,一个实例,只有在节点所在的主机上才能访问这个服务,其他的节点无法访问)

标签:task,service,访问,端口,swarm,节点
From: https://www.cnblogs.com/chuanzhang053/p/16711115.html

相关文章