如果我想通過域名訪問怎麼辦,而且這三臺主機都有服務。源碼:https://github.com/limingios/msA-docker swarm分支
之前講理論的時候說過負載均衡,對每個服務在每臺主機上都是有負載均衡的,來進行輪詢,每臺主機server01,server02,server03,分別去訪問他們的8080埠,去搭建一個負載均衡,可以用nginx或者apache,這裡使用nginx的方式,畢竟之前使用過nginx。拉取部署完,需要20分鐘,外網確實很慢。
docker pull nginx
vi nginx.conf
配置文件
upstream idig88 { server 192.168.66.101:8080; server 192.168.66.102:8080; server 192.168.66.103:8080; }
server { listen 80; server_name www.idig88.com; location / { proxy_pass http://idig88; } }
啟動命令
docker run -idt -p 80:80 -v `pwd`/nginx.conf:/etc/nginx/conf.d/default.conf nginx
配置一個host文件,在主機上 不是server01 server02 server03
sudu vi /etc/hosts
登錄試試
docker service scale ms_gateway-zuul=3 docker service ps ms-gateway-zuul
docker service update ms_course-edge-service --limit-cpu 0.5 docker service inspect ms_course-edge-service
#取消manager docker node demote [NODE] docker node inspect [NODE] docker node ls # 升級成manager docker node promote [NODE] docker node ps [NODE] docker node rm [NODE] docker node update [OPTIONS] NODE
PS:有詳細看看官網的文檔,裡面有非常多樣化的配置,我相信基本可以滿足大家的需求。到這樣docker swarm 也就學完了,相信有個整體的認識吧。另外要說下有2個UI管理docker swarm的工具Portainer和Shipyard。下次開始k8s!
推薦閱讀: