mat*_*ett 2 docker docker-compose
我已经研究过一个简单的问题docker compose down,但找不到解决方案。任何指导表示赞赏。
docker compose up工作正常,但是当我尝试关闭该项目时,一个容器不会关闭/删除。这会导致error while removing network: ... has active endpointsdocker compose down 期间出现错误。
以下是我启动容器的方法:\n yarn docker:compose:test:up,它运行"docker compose -f docker-compose.test.yml up". 一切开始都很好,生活还要继续。
这是整个docker-compose.test.yml文件:
---\nservices:\n redis:\n networks:\n - redis-network\n command:\n - redis-server\n - "--appendonly"\n - "yes"\n - "--requirepass ${REDIS_PASSWORD}"\n image: redis\n container_name: resonate-redis\n restart: always\n\n expose:\n - 6379\n ports:\n - "${REDIS_PORT}:6379"\n\n api:\n networks:\n - api-network\n - redis-network\n build: .\n command: /bin/sh -c "yarn && yarn migrate:test && yarn start:dev"\n container_name: resonate-api\n environment:\n - NODE_ENV=test\n depends_on:\n - redis\n - pgsql-test\n ports:\n - "4000:4000"\n restart: always\n volumes:\n - ./:/var/www/api\n - ./data/media/incoming:/data/media/incoming\n - ./data/media/audio:/data/media/audio\n - ./data/media/images:/data/media/images\n\n pgsql-test:\n image: postgres:14-alpine\n env_file:\n - .env\n volumes:\n - ./data/pgsql-test:/var/lib/postgresql/data\n - ./data/pgsql-test-backups:/backups\n container_name: resonate-pgsql-test\n networks:\n - api-network\n ports:\n - '${POSTGRES_TEST_LOCAL_MACHINE_PORT}:5432'\n nginx:\n restart: always\n container_name: resonate-nginx\n networks:\n - api-network\n build:\n context: ./nginx\n ports:\n - "${NGINX_PORT}:80"\n\nnetworks:\n api-network:\n driver: bridge\n # app-network:\n # driver: bridge\n redis-network:\n driver: bridge\n\nvolumes:\n certbot-etc:\n certbot-var:\n htpasswd:\n driver: local\n driver_opts:\n type: none\n device: "${PWD}/htpasswd/"\n o: bind\n web-root:\n driver: local\n driver_opts:\n type: none\n device: "${PWD}/public/"\n o: bind\n dhparam:\n driver: local\n driver_opts:\n type: none\n device: "${PWD}/dhparam/"\n o: bind\n\nversion: "3.7"\nRun Code Online (Sandbox Code Playgroud)\n后来,我运行docker compose down并最终得到以下输出:
(base) iMac:api imac$ docker compose down\n[+] Running 4/5\n \xe2\xa0\xbf Container resonate-nginx Removed 0.3s\n \xe2\xa0\xbf Container resonate-api Removed 0.5s\n \xe2\xa0\xbf Container resonate-redis Removed 0.3s\n \xe2\xa0\xbf Network api_redis-network Removed 0.1s\n \xe2\xa0\xbf Network api_api-network Error 0.0s\nfailed to remove network api_api-network: Error response from daemon: error while removing network: network api_api-network id ... has active endpoints\nRun Code Online (Sandbox Code Playgroud)\n容器pgsql-test没有被移除,网络也不能因此而停止。
我不知道为什么会发生这种情况,也不知道该怎么做才能解决它。任何帮助表示赞赏。
\n谢谢!
\n小智 5
刚刚发生在我身上。
无法删除网络 ots_djangoapp:来自守护程序的错误响应:删除网络时出错:网络 ots_djangoapp id 1450efd2df6c 具有活动端点
已经工作多年了,但看起来好像其中一项更新改变了一切。可能在 2.7.0 错误修复中https://docs.docker.com/compose/profiles/
我的 yml 配置使用了配置文件
https://docs.docker.com/compose/profiles/
我将分别从docker-compose --profile prod up -d和开始docker-compose down。
通过简单地将显式的 --profile 参数添加到 down 命令中,我让它再次工作。
docker-compose --profile prod down
-干杯
| 归档时间: |
|
| 查看次数: |
4727 次 |
| 最近记录: |