日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

如何访问 Service?- 每天5分钟玩转 Docker 容器技术(99)

發布時間:2024/8/26 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 如何访问 Service?- 每天5分钟玩转 Docker 容器技术(99) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前面我們已經學習了如何部署 service,也驗證了 swarm 的 failover 特性。不過截止到現在,有一個重要問題還沒有涉及:如何訪問 service?這就是本節要討論的問題。

為了便于分析,我們重新部署 web_server。

?docker service rm?刪除 web_server,service 的所有副本(容器)都會被刪除。

② 重新創建 service,這次直接用?--replicas=2?創建兩個副本。

③ 每個 worker node 上運行了一個副本。

好了,現在 service 已經在那里了,我們如何訪問呢?

要訪問 http 服務,最起碼網絡得通吧,服務的 IP 我們得知道吧,但這些信息目前我們都不清楚。不過至少我們知道每個副本都是一個運行的容器,要不先看看容器的網絡配置吧。

在 swarm-worker1 上運行了一個容器,是 web_server 的一個副本,容器監聽了?80?端口,但并沒有映射到 Docker Host,所以只能通過容器的 IP 訪問。查看一下容器的 IP。

容器 IP 為?172.17.0.2,實際上連接的是 Docker 默認?bridge?網絡。

我們可以直接在 swarm-worker1 上訪問容器的 http 服務。

但這樣的訪問也僅僅是容器層面的訪問,服務并沒有暴露給外部網絡,只能在 Docker 主機上訪問。換句話說,當前配置下,我們無法訪問 service web_server。

從外部訪問 service

要將 service 暴露到外部,方法其實很簡單,執行下面的命令:

docker service update --publish-add 8080:80 web_server


如果是新建 service,可以直接用使用
?--publish?參數,比如:

docker service create --name web_server --publish 8080:80 --replicas=2 httpd


容器在 80 端口上監聽 http 請求,--publish-add 8080:80?將容器的 80 映射到主機的 8080 端口,這樣外部網絡就能訪問到 service 了。

大家可能會奇怪,為什么 curl 集群中任何一個節點的 8080 端口,都能夠訪問到 web_server?

這實際上就是使用 swarm 的好處了,這個功能叫做 routing mesh,我們下一節重點討論。


書籍:

1.《每天5分鐘玩轉Docker容器技術》
https://item.jd.com/16936307278.html

2.《每天5分鐘玩轉OpenStack》
https://item.jd.com/12086376.html

轉載于:https://www.cnblogs.com/CloudMan6/p/7909136.html

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的如何访问 Service?- 每天5分钟玩转 Docker 容器技术(99)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。