如何更改Docker的默认网络?

4

也许这里有一个Docker守护进程的配置文件 here - fishi0x01
3个回答

0
如果您使用docker-compose,可以在yml文件中使用networks键。以下示例将mongo指定为使用“pinguine”作为默认网络:
version: '3.1'
services:

  mongo:
    image: mongo
    restart: always
    environment:
      MONGO_INITDB_ROOT_USERNAME: root
      MONGO_INITDB_ROOT_PASSWORD: example
    networks:
      - project-network

networks:
  project-network:
    name: pinguine

-2
创建或编辑文件/etc/docker/daemon.json并添加以下配置。
{
    "bridge": "my_network"
}

这种方式默认情况下将使用my_network


2
那不行。重新启动守护程序失败,显示“ Error starting daemon: Error initializing network controller: Error creating default "bridge" network: bridge device with non default name pub_net must be created manually”错误提示。 - icksde

-2

Docker提供了不同的网络驱动程序,如bridge、host、overlay和macvlan。 bridge是默认设置。

要更改您的默认网络驱动程序:

  • 编辑或创建Docker守护进程的配置文件:

    # nano /etc/docker/daemon.json
    

    添加以下内容:

    {
      "default-address-pools":
        [
          {"base":"10.10.0.0/16","size":24}
        ]
    }
    

    重启 Dockerd:

    # service docker restart
    
  • 使用 --driver 或 -d 参数创建一个新的网络:

  • 使用 --network 参数运行您的 Docker 镜像以使用您新创建的网络。

    $ docker network create foo
    $ docker network inspect foo | grep Subnet
                "Subnet": "10.10.1.0/24"
    

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接