docker-compose容器互相連接的實現
一些示例未整理
haproxy 與nginx 容器連接
## 服務的compose 編寫 mkdir /mnt/compose vim docker-compose.yml 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 docker-compose.yml haproxy web1 web2 [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" db: image: postgres
參考文章:
https://www.cnblogs.com/jackadam/p/9771718.html
https://itbilu.com/linux/docker/Ey5dT-i2G.html
到此這篇關於docker-compose容器互相連接的實現的文章就介紹到這瞭,更多相關docker-compose容器互相連接內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Docker Compose的安裝和使用步驟
- docker-compose安裝yml文件配置方式
- 解決使用Docker Compose管理容器的問題
- docker compose快速開始超詳細教程
- Docker搭建部署Node項目的方法步驟