docker 集群部署


 

172.17.48.194(主)
172.17.48.195(從)
172.17.48.196(從)
172.17.48.197(從)
 
 
1.初始化一個集群的master服務器
 
docker swarm init --advertise-addr 172.17.48.194
 
[root@localhost ~]# docker swarm init --advertise-addr 172.17.48.194
Swarm initialized: current node (j20c5mjl4iwa32rosb9ny43fm) is now a manager.
 
To add a worker to this swarm, run the following command:
 
    docker swarm join --token SWMTKN-1-667gxbotuejy9vblhk29qogybx4i460f8pc0pui4q0igmmkr57-aj69k8srd3kp8t4740aktc9tx 172.17.48.194:2377
 
To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.

 

 
 
2.從服務器加入,執行下面的命令,注意需要將主服務器的2377端口打開
docker swarm join --token SWMTKN-1-667gxbotuejy9vblhk29qogybx4i460f8pc0pui4q0igmmkr57-aj69k8srd3kp8t4740aktc9tx 172.17.48.194:2377
 
加入成功后,docker node ls 查看集群的信息
 
docker swarm常用命令
Docker swarm init:初始化一個集群
Docker swarm join:加入一個集群
Docker node ls:查看集群的信息
Docker service create:創建一個集群服務
Docker service ls:查看集群的服務
Docker service rm:刪除一個集群服務
 
3.搭建docker私服庫
 
拉取registry鏡像
docker pull registry
 
創建容器
docker run -p 5000:5000 -v /opt/data/registry:/var/lib/registry --restart=always --name my_registry -d registry:latest
 
 
這樣一個docker私服庫就已經搭建好了

 

 

 
容器啟動后,打開瀏覽器訪問: http://172.17.48.194:5000/v2/ 出現下面這種情況說明運行正常

 

 

 
上傳自己代碼,生成鏡像
 
docker build -t aliyunhelper:1.0 . --network=host
 

 

 

 
推送自己的鏡像到私有庫
 
先要打標簽,否則可能出現以下錯誤

 

 

 
解決辦法:
docker tag aliyunhelper:1.0 172.17.48.194:5000/aliyunhelper:1.0
 
如果遇到這個問題
 

 

 

 
解決辦法如下:
 
vi /etc/docker/daemon.json
添加 {"insecure-registries": ["http://172.17.48.194:5000"]}

 

 

保存
systemctl daemon-reload
systemctl restart docker
 
 
 
再次嘗試push
docker push 172.17.48.194:5000/aliyunhelper:1.0
成功如下

 

 

 
上傳成功后,curl http://172.17.48.194:5000/v2/_catalog 可以查詢私服庫信息,如下圖所示
 

 

 

 
 

 

 

 
4.創建一個集群服務
用之前從docker私服庫中拉取的鏡像,在主機上輸入:
 
docker service create --replicas 4 -p 8000:80 --name mySwarm1 172.17.48.194:5000/aliyunhelper:1.0
 
這樣就創建了一個docker swarm集群服務,這里的replicas是部署幾台服務器,swarm集群會先從本地找有沒有對應的鏡像,如果有則直接run該鏡像,如果沒有則從docker私服庫上拉取,然后一個服務器一個服務器run鏡像生成容器
 
 

 

 

 

 


 

 
打開瀏覽器訪問:
172.17.48.194:8000
172.17.48.195:8000
172.17.48.196:8000
172.17.48.197:8000
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM