网络通讯

未匹配的标注

bridge 模式

默认networks使用此模式,在docker-compose里定义networksservices下绑定即可:

networks:
  n1:
  n2:
services:
  s1:
    networks:
      -n1
  s2:
    networks:
      -n2
  s3:
    networks:
      -n1
      -n2

其中,s3 可以和 s1s2 互通, s1s2 通讯隔离

host 模式

services:
  s1:
     network_mode: "host"
  s2:
     post:
       - "80:80"

其中,s2 监听主机 80 端口,s1 共用主机所有端口(只有linux下有效果)

windows 环境下,容器和宿主机通讯

比如宿主机有个网站:http://localhost:8000,有个nginx容器,希望通过域名home.test.local访问
使用host.docker.internal替代nginx中的ip

server {
    listen        80;
    server_name  home.test.local;
    location / {
        # proxy_pass http://localhost:8000;
        proxy_pass http://host.docker.internal:8000;
    }
}

本文章首发在 LearnKu.com 网站上。

上一篇 下一篇
秦晓武
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 0
发起讨论 只看当前版本


暂无话题~