docker-compose容器互相连接的实现⼀些⽰例未整理
haproxy 与nginx 容器连接
## 服务的compose 编写
mkdir /mnt/compose
l
web1:
image: nginx
expose:
- 80
volumes:
- ./web1:/usr/share/nginx/html
web2:
image: nginx
expose:
- 80
volumes:
- ./web2:/usr/share/nginx/html
haproxy:
image: haproxy
volumes:
- ./haproxy/haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg:ro
links:
-
web1
- web2
ports:
- "80:80"
expose:
- 80
##haproxy 配置⽂件
[root@server1 compose]# mkdir web1
[root@server1 compose]# mkdir web2
[root@server1 compose]# echo web1 > web1/index.html
[root@server1 compose]# echo web2 > web2/index.html
[root@server1 compose]# mkdir haproxy
[root@server1 compose]# ls
[root@server1 compose]# vim haproxy/haproxy.cfg
[root@server1 compose]# cat haproxy/haproxy.cfg
global
log 127.0.0.1 local0
log 127.0.0.1 local1 notice
defaults
log global
mode http
option httplog
option dontlognull
timeout connect 5000ms
timeout client 5000ms
timeout server 5000ms
stats uri /status
frontend balancer
bind 0.0.0.0:80
default backend web_backends
backend web backends
balance roundrobin
server server1 web1:80 check
server server2 web2:80 check
关键点是如何配置容器如何互相连接
1,⾸先在compose ⽂件中指定服务名称.然后配置links
2,在配置⽂件中指定服务的名称
docker-compose 配置⽂件⼀些知识#
network_mode:设置⽹络模式
network_mode: "bridge"
network_mode: "host"
network_mode: "none"
network_mode: "service:[service name]"
network_mode: "container:[container name/id]"
links:将指定容器连接到当前连接,可以设置别名,避免ip⽅式导致的容器重启动态改变的⽆法连接情况
links: # 指定服务名称:别名
- docker-compose-eureka-server:compose-eureka
更新容器:
当服务的配置发⽣更改时,可使⽤ docker-compose up 命令更新配置
此时,Compose 会删除旧容器并创建新容器,新容器会以不同的 IP 地址加⼊⽹络,名称保持不变,任何指向旧容起的连接都会被关闭,重新到新容器并连接上去links
服务之间可以使⽤服务名称相互访问,links 允许定义⼀个别名,从⽽使⽤该别名访问其它服务
version: '2'
services:
web:
build: .
links:
- "db:database"
docker重启容器命令db:
image: postgres
参考⽂章:
到此这篇关于docker-compose容器互相连接的实现的⽂章就介绍到这了,更多相关docker-compose容器互相连接内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论