报错背景:
之前使用的是老版本的 Docker
,今天升级之后发现项目不能使用了,原因是 Python
的驱动和 MySQL
版本不兼容的问题。于是,就把 Docker
回滚到旧版本,但是在执行
docker-compose up -d
的时候使用 control + c
强制关掉,在启动的时候就出错了。。。
MacBook:dev zhangyi$ docker-compose up -d
Pulling mysql (mysql:latest)...
Traceback (most recent call last):
File "docker-compose", line 6, in <module>
File "compose/cli/main.py", line 68, in main
File "compose/cli/main.py", line 121, in perform_command
File "compose/cli/main.py", line 938, in up
File "compose/project.py", line 430, in up
File "compose/service.py", line 311, in ensure_image_exists
File "compose/service.py", line 1024, in pull
File "site-packages/docker/api/image.py", line 381, in pull
File "site-packages/docker/auth.py", line 50, in get_config_header
File "site-packages/docker/auth.py", line 97, in resolve_authconfig
File "site-packages/docker/auth.py", line 142, in _resolve_authconfig_credstore
docker.errors.DockerException: Credentials store error: StoreError('docker-credential-desktop not installed or not available in PATH',)
Failed to execute script docker-compose
根据最后一行的报错提示可知是 Docker
在 Mac
下的凭据存储错误,解决办法都是大同小异,就是将 Securely store Docker logins in macOS keychian
这一行勾选去掉!
结果却是令人失望,还是报同样的错误。
进过思考和测试,发现应该是 docker-compose
是在启动的时候,要往配置里写数据,结果写进了错误的数据。如果找到配置文件删掉应该是可以的!
在重新启动 docker-compose
卧槽!还真是,WDNMD~