Docker-Compose构建项目失败:外部网络api_core_network未找到
解决方法
出现这个错误是因为你的docker-compose.yml里把api_core_network标记为了外部网络(external: true),Docker会认为这个网络已经提前创建好了,但实际上它并不存在。以下两种方法可以解决:
方法1:手动创建外部网络
直接在终端执行命令创建这个网络:
docker network create api_core_network
创建完成后再运行docker-compose up,就能正常启动服务了。
方法2:修改配置让Docker自动创建网络
如果你不需要这个网络和其他外部服务共享,可以修改docker-compose.yml里的网络配置,去掉external: true:
#Docker Networks networks: api_core_network: # 移除 external: true 这一行,Docker会在启动时自动创建这个网络
保存修改后重新执行docker-compose up即可。
另外注意到你的mysql服务注释掉了网络配置,如果你希望mysql也加入这个网络,可以把注释去掉:
services: mysql: # ... 其他配置 networks: - api_core_network
这样phpmyadmin就能通过mysql主机名直接访问数据库,不需要暴露3306端口到本地(当然如果需要本地直接连数据库的话可以保留端口映射)。
内容的提问来源于stack exchange,提问作者Lucas amaral
相关产品推荐
相关产品推荐

