1. 概念
网络模式
- bridge
- none
- container
- host
- 外部网络,如: flannel、calico
2. 示例:网络创建和使用
| # docker network create mynetwork |
| |
| # docker network ls |
说明:以下以das项目为例
- docker-compse启动das服务的同时创建了一个名为 xxx_kong-net的网络
- xxx为创建网络的docker-compose.yaml文件所在目录的名字
docker-compose的yml文件中定义如下:
| …… |
| user-center: |
| image: 10.252.97.57/das/scs-user:1.0.1 |
| |
| networks: |
| - kong-net |
| environment: |
| - "SPRING_PROFILES_ACTIVE=test" |
| - TZ=Asia/Shanghai |
| - DB_HOST |
| - DB_PORT |
| - UPLOAD_PATH |
| - KONG_URL |
| ports: |
| - "${APP_USER_PORT}:8088" |
| volumes: |
| - ./logs:/logs/ |
| container_name: das-user |
| restart: always |
| |
| networks: |
| kong-net: |
| driver: bridge |
| |
- 使用已有的网络
在docker-compose.yml中使用已创建好的网络
仍然已das为例,刚才后端的yml文件已经创建了kong-net网络,此处直接引用并使用。
| web: |
| image: "das/web:1.1.1" |
| container_name: "iot-web" |
| networks: |
| - kong-net |
| ports: |
| - 8008:3080 |
| volumes: |
| - ./web.conf:/.env |
| - /etc/localtime:/etc/localtime |
| restart: always |
| networks: |
| kong-net: |
| external: |
| name: app_kong-net |
3. 示例:指定网段和IP
| docker network create --subnet=172.18.0.0/16 mynetwork |
- yaml文件中指定
docker-compose.yaml中创建网络,为网络指定网段;并为容器指定合法IP。
yaml文件中指定
| networks: |
| backend: |
| ipv4_address: 192.168.101.10 |
| networks: |
| backend: |
| driver: bridge |
| ipam: |
| config: |
| - subnet: 192.168.101.0/24 |
| gateway: 192.168.101.1 |
4. 示例:主机模式启动网络
- 特点:端口不需映射
- 使用
具体服务下定义 network_mode: "host"
,以medier-server为例
| version: "3.1" |
| services: |
| media_server: |
| image: harbocto.boe.com.cn/public/kurento-media-server |
| environment: |
| KMS_MIN_PORT: 5000 |
| KMS_MAX_PORT: 5050 |
| TZ: Asia/Shanghai |
| |
| network_mode: "host" |
| restart: always |

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律