Flo*_*ian 14 php mysql networking docker docker-compose
我有一个docker-compose与一些php,mysql等开始.几天后,我不能把它们搞砸,因为一切都停止而不是mysql.它总是给我以下错误:
ERROR: network docker_default has active endpoints
Run Code Online (Sandbox Code Playgroud)
这是我的docker-compose.yml
version: '2'
services:
php:
build: php-docker/.
container_name: php
ports:
- "9000:9000"
volumes:
- /var/www/:/var/www/
links:
- mysql:mysql
restart: always
nginx:
build: nginx-docker/.
container_name: nginx
links:
- php
- mysql:mysql
environment:
WORDPRESS_DB_HOST: mysql:3306
ports:
- "80:80"
volumes:
- /var/log/nginx:/var/log/nginx
- /var/www/:/var/www/
- /var/logs/nginx:/var/logs/nginx
- /var/config/nginx/certs:/etc/nginx/certs
- /var/config/nginx/sites-enabled:/etc/nginx/sites-available
restart: always
mysql:
build: mysql-docker/.
container_name: mysql
volumes:
- /var/mysql:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD: pw
MYSQL_USER: florian
MYSQL_PASSWORD: pw
MYSQL_DATABASE: database
restart: always
phpmyadmin:
build: phpmyadmin/.
links:
- mysql:db
ports:
- 1234:80
container_name: phpmyadmin
environment:
PMA_ARBITRARY: 1
PMA_USERNAME: florian
PMA_PASSWORD: pw
MYSQL_ROOT_PASSWORD: pw
restart: always
Run Code Online (Sandbox Code Playgroud)
docker network inspect docker_default 给我:
[
{
"Name": "docker_default",
"Id": "1ed93da1a82efdab065e3a833067615e2d8b76336968a2591584af5874f07622",
"Created": "2017-03-08T07:21:34.969179141Z",
"Scope": "local",
"Driver": "bridge",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": null,
"Config": [
{
"Subnet": "172.18.0.0/16",
"Gateway": "172.18.0.1"
}
]
},
"Internal": false,
"Attachable": false,
"Containers": {
"85985605f1c0c20e5ee9fedc95800327f782beafc0049f51e645146d2e954b7d": {
"Name": "mysql",
"EndpointID": "84fb19cd428f8b0ba764b396362727d9809cd1cfea536e648bfc4752c5cb6b27",
"MacAddress": "02:42:ac:12:00:03",
"IPv4Address": "172.18.0.3/16",
"IPv6Address": ""
}
},
"Options": {},
"Labels": {}
}
]
Run Code Online (Sandbox Code Playgroud)
似乎docker rm mysql -f停止了mysql容器,但网络正在运行.
删除了网络docker network disconnect -f docker_default mysql但我对如何陷入这种情况非常感兴趣.有任何想法吗?
Ale*_*x K 30
当我在停止容器之前通过 docker-compose.yml 文件重命名服务后添加此问题时,我解决了类似的问题
docker-compose down --remove-orphans
Run Code Online (Sandbox Code Playgroud)
Tom*_*iak 20
您需要断开陈旧的端点与网络的连接。首先,获取端点名称
docker network inspect <network>
Run Code Online (Sandbox Code Playgroud)
您可以在输出 JSON: 中找到您的端点Containers -> Name。现在,只需使用以下命令强制断开它们:
docker network disconnect -f <network> <endpoint>
Run Code Online (Sandbox Code Playgroud)
nat*_*itt 12
我猜你在你正在运行的时候编辑了docker-compose文件......?
有时,如果您在执行之前编辑docker-compose文件docker-compose down,那么docker-compose将尝试停止的不匹配.首先运行docker rm 8598560以停止当前运行的容器.从那里,确保docker-compose down在编辑文件之前执行操作.一旦你停止容器,docker-compose up应该工作.
我碰巧遇到此错误消息,因为我有两个同名的网络(复制/粘贴错误)。
我做了什么来修复它:
docker-compose down- 忽略错误docker network list- 注意是否有任何容器正在使用它,并在必要时停止docker network prune删除所有悬空网络,尽管您可能只想docker network rm <network name>docker-compose up| 归档时间: |
|
| 查看次数: |
7368 次 |
| 最近记录: |