gpt4 book ai didi

python - docker项目中mysql配置的不同主机值产生不同的错误

转载 作者:行者123 更新时间:2023-11-29 10:07:37 26 4
gpt4 key购买 nike

我正在为一个新项目做出贡献,但获取有关设置/构建的信息很困难。我可以在构建过程中完成以下步骤:

$ docker-machine create -d virtualbox dev;
$ eval $(docker-machine env dev)
$ docker-compose build
$ docker-compose up -d

下一个命令失败:

$ docker-compose run web /usr/local/bin/python manage.py migrate

...出现此错误:

(2005, "Unknown MySQL server host 'mysql' (0)")

当我将 mysql 主机从 mysql 更改为 localhost 时,我收到一个新错误:

(2002, "Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)")

我已阅读每个错误,但建议的解决方案与我的代码无关(除了将 HOST 设置为 localhost 的建议之外)。哪个主机值是正确的以及针对相应的错误应该采取什么措施?

我实际上不确定 mysql 是否正在运行、它应该在哪里运行以及如何检查其状态。

最佳答案

我怀疑mysql在另一个容器中,并且项目容器在docker-compose.yml中称为“web”。

当你将mysql更改为localhost时,它会尝试连接到Web容器中的本地mysql(通过linux套接字),但它当然不存在,因为它有自己的容器,我怀疑它在docker中称为mysql- compose.yml。

要查看正在运行的容器,您可以使用 sudo docker ps ,如果 mysql 容器停止/重新启动,您可以使用 docker logs <mysql container name/ID> 进行调查.

如果是这种情况,请尝试在 docker-compose.yml 中查找挂载以进一步调查。

关于python - docker项目中mysql配置的不同主机值产生不同的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51587078/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com