docker-compose 使用驱动程序创建网络"x" "default"找不到插件。适用于 Windows 的 Docker



如何将静态ip地址分配给docker compose文件中的每个容器。

错误:正在创建网络"dockercompose7405404752525846881_app_net"未找到驱动程序为"默认"的插件。

该解决方案有两个项目,一个web前端和一个web api后端。通过angular.js访问后端

项目在docker的外部构建和运行,在docker内部运行。

问题是我需要在docker compose文件中设置静态ip地址,这样我就可以管理前端和后端之间的通信(记住它是有角度的,需要知道webapi的ip)。

这是我的消毒docker组成文件:

version: '2.1'
services:
backend.api:
image: backend.api
ports:
- "80:80"
build:
context: .backend.API
dockerfile: Dockerfile
networks:
app_net:
ipv4_address: 111.111.1.200 

frontend:
image: frontend
env_file: 
- .frontendconfig.env
ports:
- "80:80"
build:
context: .frontend
dockerfile: Dockerfile
networks:
app_net:
ipv4_address: 111.111.1.210       
networks:
app_net:
driver: default
ipam:
driver: default
config:
- subnet: 111.111.1.0/24 

我得到的错误消息如下:

使用创建网络"dockercompose7405404752525846881_app_net"未找到驱动程序"默认"插件。

我尝试过版本3版本2和版本2.1

我希望这能帮助其他有同样问题的人。"这是为WINDOWS DOCKER容器">

我终于找到了在visual studio中使用Docker Compose文件在容器上设置静态ip的正确方法。。

关键是你需要先手动创建一个网络

docker network create -d nat --subnet=192.168.1.0/24 --gateway=192.168.1.254 app_net

当你在PowerShell中执行这一行时,请记住更改网络名称和IP地址以适应你的目的

docker network create -d nat --subnet=<subnet ip>/<end renage> --gateway=<gateway ip> <network name>

Docker组成文件

version: '3.2'
services:
backend.api:
image: backend.api
build:
context: .backend.API
dockerfile: Dockerfile
networks:
app_net:
ipv4_address: 111.111.1.210        
FRONTEND:
image: FRONTEND
env_file: 
- .FRONTENDconfig.env
build:
context: .FRONTEND
dockerfile: Dockerfile
networks:
app_net: 
ipv4_address: 111.111.1.220

networks:
app_net:
external: true

最新更新