在默认情况下,Docker Compose 使用的是 Docker 的默认网络 bridge
,而不是 docker0
网络。docker0
网络是一个 Docker 创建的默认桥接网络,用于容器之间的通信。
要在 Docker Compose 中使用 docker0
网络,你需要创建一个自定义的网络,并将其设置为 Compose 文件中的网络。下面是一个示例的 Docker Compose 配置文件:
- version: '3'
- services:
- myservice:
- image: your_image_name
- networks:
- - mynetwork
-
- networks:
- mynetwork:
- external:
- name: docker0
在上述示例中,我们创建了一个名为 mynetwork
的自定义网络,并将其设置为 myservice
服务的网络。mynetwork
使用了 docker0
作为外部网络,以便使用 docker0
网络进行通信。
为了使这个配置生效,确保你已经创建了 my_network
,你可以通过以下命令创建:
docker network create docker0 --driver bridge
vim /etc/docker/daemon.json
- {
- "debug":true,
- "default-address-pools":[
- {
- "base":"192.168.0.0/16",
- "size":24
- }
- ]
- }