Docker集群实验环境布署--swarm【6 配置上层Nginx代理,让任意Docker client访问得到高可用的管理API】
2017-01-16 17:48
1016 查看
10.40.42.10上,也就是对应的VRRP中的10.40.42.1和2上,配置nginx tcp代理
# cat 4000_manager.venic.com_10.40.100.141-142_4000.conf
upstream manager.venic.com {
server 10.40.100.141:4000;
server 10.40.100.142:4000;
}
server {
listen 4000;
proxy_pass manager.venic.com;
}
重启上层nginx代理服务
最终在有docker CLI命令行的机器上使用 docker-manager.venic.com:4000来测试方式
[root@docker-registry ~]# docker -H docker-manager.venic.com:4000 ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2cf7f3288ead docker-registry.venic.com:5000/swarm:latest "/swarm join --advert" 9 minutes ago Up 9 minutes 2375/tcp docker-node1.venic.com/node1
36679f016f7b docker-registry.venic.com:5000/swarm:latest "/swarm join --advert" 9 minutes ago Up 9 minutes 2375/tcp docker-node0.venic.com/node0
[root@docker-registry ~]# docker -H docker-manager.venic.com:4000 run hello-world
[root@docker-registry ~]# docker -H docker-manager.venic.com:4000 ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
350684df98bf hello-world "/hello" 9 seconds ago Exited (0) 8 seconds ago docker-node0.venic.com/sick_shannon
2cf7f3288ead docker-registry.venic.com:5000/swarm:latest "/swarm join --advert" 10 minutes ago Up 10 minutes 2375/tcp docker-node1.venic.com/node1
36679f016f7b docker-registry.venic.com:5000/swarm:latest "/swarm join --advert" 10 minutes ago Up 10 minutes 2375/tcp docker-node0.venic.com/node0
[root@docker-registry ~]# docker -H docker-manager.venic.com:4000 run -it docker-registry.venic.com:5000/ubuntu:latest /bin/sh
#
#
#
#
# uname -a
Linux f078e8079bca 3.10.0-514.2.2.el7.x86_64 #1 SMP Tue Dec 6 23:06:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
#
# docker -H docker-manager.venic.com:4000 ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f078e8079bca docker-registry.venic.com:5000/ubuntu:latest "/bin/sh" 38 seconds ago Up 34 seconds docker-node0.venic.com/ecstatic_visvesvaraya
85209ebc93b7 docker-registry.venic.com:5000/ubuntu:latest "-it /bin/sh" 53 seconds ago Created docker-node1.venic.com/romantic_mcclintock
350684df98bf hello-world "/hello" About a minute ago Exited (0) About a minute ago docker-node0.venic.com/sick_shannon
2cf7f3288ead docker-registry.venic.com:5000/swarm:latest "/swarm join --advert" 11 minutes ago Up 11 minutes 2375/tcp docker-node1.venic.com/node1
36679f016f7b docker-registry.venic.com:5000/swarm:latest "/swarm join --advert" 12 minutes ago Up 12 minutes 2375/tcp docker-node0.venic.com/node0
只是这个 -it后,容器CMD命令行不够单机友好,那些tab补全和回退删键用不了,另外有个惊喜之处就是它的 Name会记录是在哪台宿主机上启动的容器。-v的挂载也是挂在对应的机器上的
# cat 4000_manager.venic.com_10.40.100.141-142_4000.conf
upstream manager.venic.com {
server 10.40.100.141:4000;
server 10.40.100.142:4000;
}
server {
listen 4000;
proxy_pass manager.venic.com;
}
重启上层nginx代理服务
最终在有docker CLI命令行的机器上使用 docker-manager.venic.com:4000来测试方式
[root@docker-registry ~]# docker -H docker-manager.venic.com:4000 ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2cf7f3288ead docker-registry.venic.com:5000/swarm:latest "/swarm join --advert" 9 minutes ago Up 9 minutes 2375/tcp docker-node1.venic.com/node1
36679f016f7b docker-registry.venic.com:5000/swarm:latest "/swarm join --advert" 9 minutes ago Up 9 minutes 2375/tcp docker-node0.venic.com/node0
[root@docker-registry ~]# docker -H docker-manager.venic.com:4000 run hello-world
[root@docker-registry ~]# docker -H docker-manager.venic.com:4000 ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
350684df98bf hello-world "/hello" 9 seconds ago Exited (0) 8 seconds ago docker-node0.venic.com/sick_shannon
2cf7f3288ead docker-registry.venic.com:5000/swarm:latest "/swarm join --advert" 10 minutes ago Up 10 minutes 2375/tcp docker-node1.venic.com/node1
36679f016f7b docker-registry.venic.com:5000/swarm:latest "/swarm join --advert" 10 minutes ago Up 10 minutes 2375/tcp docker-node0.venic.com/node0
[root@docker-registry ~]# docker -H docker-manager.venic.com:4000 run -it docker-registry.venic.com:5000/ubuntu:latest /bin/sh
#
#
#
#
# uname -a
Linux f078e8079bca 3.10.0-514.2.2.el7.x86_64 #1 SMP Tue Dec 6 23:06:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
#
# docker -H docker-manager.venic.com:4000 ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f078e8079bca docker-registry.venic.com:5000/ubuntu:latest "/bin/sh" 38 seconds ago Up 34 seconds docker-node0.venic.com/ecstatic_visvesvaraya
85209ebc93b7 docker-registry.venic.com:5000/ubuntu:latest "-it /bin/sh" 53 seconds ago Created docker-node1.venic.com/romantic_mcclintock
350684df98bf hello-world "/hello" About a minute ago Exited (0) About a minute ago docker-node0.venic.com/sick_shannon
2cf7f3288ead docker-registry.venic.com:5000/swarm:latest "/swarm join --advert" 11 minutes ago Up 11 minutes 2375/tcp docker-node1.venic.com/node1
36679f016f7b docker-registry.venic.com:5000/swarm:latest "/swarm join --advert" 12 minutes ago Up 12 minutes 2375/tcp docker-node0.venic.com/node0
只是这个 -it后,容器CMD命令行不够单机友好,那些tab补全和回退删键用不了,另外有个惊喜之处就是它的 Name会记录是在哪台宿主机上启动的容器。-v的挂载也是挂在对应的机器上的
相关文章推荐
- Docker集群实验环境布署--swarm【5 容器启动组件--node】
- Docker集群实验环境布署--swarm【4 管理组件--manager】
- Docker集群实验环境布署--swarm【3 注册服务监控与自动发现组件--consul】
- Docker集群实验环境布署--swarm【2 搭建本地镜像仓库】
- Docker集群实验环境布署--swarm【1 架构说明】
- Docker学习笔记(五)-fixbug2-Hash sum mismatch
- docker基础知识命令
- docker0: iptables: No chain/target/match by that name错误处理
- Docker - 容器编排工具 compose 之安装
- docker绑定udp端口
- 阿里云上搭建Docker Swarm模式集群最佳实践
- 理解Docker容器网络之Linux Network Namespace
- supervisord + docker 启动汇总
- MAC 下安装配置 Docker(2016最新版)并搭建Lamp
- Docker 介绍及其应用
- Docker 入门实践
- Docker实践―CentOS7上部署Kubernetes详解
- docker之学习路线
- Spring boot 与 Docker-compose构建微服务应用(2)
- 10张图带你深入理解Docker容器和镜像