J'ai un docker-compose avec du php, mysql et ainsi de suite. Après quelques jours, je ne peux plus les faire tomber car tout s'arrête au lieu de mysql. Cela me donne toujours l'erreur suivante:
ERROR: network docker_default has active endpoints
c'est mon 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
docker network inspect docker_default
Donne moi:
[
{
"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": {}
}
]
Semble que docker rm mysql -f
a arrêté le conteneur mysql, mais le réseau fonctionne.
Suppression du réseau avec docker network disconnect -f docker_default mysql
Mais je suis assez intéressé par la façon dont je me suis retrouvé dans cette situation. des idées?
Je suppose que vous avez modifié le fichier docker-compose pendant que vous exécutiez actuellement ...?
Parfois, si vous modifiez le fichier docker-compose avant de faire un docker-compose down
il y aura alors un décalage dans ce que docker-compose tentera d'arrêter. Première exécution docker rm 8598560
pour arrêter le conteneur en cours d'exécution. À partir de là, assurez-vous de faire un docker-compose down
avant de modifier le fichier. Une fois que vous arrêtez le conteneur, docker-compose up
devrait marcher.