如何用docker swarm 实现集群
发表于:2025-12-04 作者:千家信息网编辑
千家信息网最后更新 2025年12月04日,如何用docker swarm 实现集群,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。(1) go 编写 web 程序主
千家信息网最后更新 2025年12月04日如何用docker swarm 实现集群
如何用docker swarm 实现集群,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
(1) go 编写 web 程序
主要实现 监听 ip:9090/Source 浏览,并记录 服务器主机与访问次数。
代码
package mainimport ( "fmt" "log" "net/http" "runtime" "strconv" "os")var i int = 0func sayHello(w http.ResponseWriter, r *http.Request){//func sayHello(){ i++ fmt.Print(i) fmt.Print("\n") fmt.Print("visit!"+"\n") hostname,er :=os.Hostname() if er == nil { dates := "jenkins:"+"Login \n"+"visit Count:"+strconv.Itoa(i)+"\nHostname:"+hostname w.Write([]byte(dates)) defer r.Body.Close() }else { return }}func main(){ fmt.Print("<<<<< "+runtime.GOOS+"\n") fmt.Print("<<<<< "+runtime.GOARCH+"\n") http.HandleFunc("/Source",sayHello) fmt.Print("<<< debug start"+"\n") er := http.ListenAndServe(":9090",nil) fmt.Print("<<< debug end") fmt.Print(er) if er != nil { log.Fatal("ListenAndServe",er) }}(2) 生成arch 程序
go build arch.go
(3) arch + Dockerfile 生成微服务镜像
Dockerfile
FROM ubuntu:16.04MAINTAINER ZHBCOPY ./arch /RUN chmod 777 /archRUN touch /log.txtEXPOSE 9090ENTRYPOINT ["sh","-c","./arch >> /log.txt"] #可在 容器里 tail -f log.txt 监控
docker build -t ip:5000/swarm:0.0 ./
ubuntu@local:~/SWARM$ docker build -t 192.168.175.139:5000/swarm:0.0 ./Sending build context to Docker daemon 6.629MB #Sending build context 可以用.dockerignore 阻止 Step 1/7 : FROM ubuntu:16.04 ---> a51debf7e1ebStep 2/7 : MAINTAINER ZHB ---> Using cache ---> 26b542a8286bStep 3/7 : COPY ./arch / ---> Using cache ---> aff0b358480cStep 4/7 : RUN chmod 777 /arch ---> Using cache ---> 6e07a223b571Step 5/7 : RUN touch /log.txt ---> Using cache ---> 03be86c93b8aStep 6/7 : EXPOSE 9090 ---> Using cache ---> fe9c6a7ab542Step 7/7 : ENTRYPOINT ["sh","-c","./arch >> /log.txt"] ---> Using cache ---> 6287178e0005Successfully built 6287178e0005Successfully tagged 192.168.175.139:5000/swarm:0.0
push 镜像
docker push ip:5000/swarm:0.0
(4)主节点 swarm init
docker swarm init
其他服务器加入集群
docker swarm join --token **** ip:2377
(5)创建service
docker service create --replicas 6 --name=swarm-service --publish 9090:9090 IP:5000/swarm:0.0
overall progress: 0 out of 6 tasks1/6: preparing [=================================> ]2/6: preparing [=================================> ]3/6: preparing [=================================> ]4/6: preparing [=================================> ]5/6: preparing [=================================> ]6/6: preparing [=================================> ]
(6) web 访问 ip:9090/Source 并实现负载均衡
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。
服务
集群
服务器
程序
镜像
帮助
生成
清楚
均衡
主机
代码
内容
可在
容器
对此
文章
新手
更多
次数
知识
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
南川区全过程软件开发服务代理商
有关于大学生网络安全的论文
java获取当前运行服务器ip
手机服务器故障怎么办
县网络安全整改汇报
欧盟网络安全 公开 可靠
数据库查找最近7天的数据
物联网工程做软件开发好吗
笔记本用网线连接服务器管理
看懂网络技术
我的世界怎么注册求生之路服务器
高校网络安全注意
vr科技与互联网虚拟现实
湖北微思敦网络技术有限公司
鼠标输入法软件开发
数据库排序限制条件
河南炎辉网络技术有限公司
汇纳科技与万达互联网
服务器如何安全巡检
国产工业级串口服务器多少钱
个人信用信息的数据库
sql数据库修改日期
陇剑杯网络安全大赛决赛落幕
微信搜索服务器繁忙
数据库技术考试软件
怎么登录魔导战争服务器
管理工具没有服务器管理器
虚拟服务器 安全
计算机软件开发的岗位
数据库管理需要哪些证书