在 Docker 中找不到 MySQL 的 mysql_config [重复]

Posted

技术标签:

【中文标题】在 Docker 中找不到 MySQL 的 mysql_config [重复]【英文标题】:mysql_config not found with MySQL in Docker [duplicate] 【发布时间】:2019-03-13 04:15:29 【问题描述】:

我在 Docker 上安装了 mysql 5.7,运行良好,并且在本地安装了 python 3.7。

我尝试使用命令安装flask-mysqldb

pip install flask-mysqldb

我收到一个错误

OSError: mysql_config not found

我从来不需要在我的机器上安装 MySQL 客户端连接器,连接任何系统也从来没有任何问题。

这与我的 Docker 配置有关吗? 我该如何解决这个问题?

【问题讨论】:

你在哪里执行了 pip install 命令?在 mysql 容器内? python 在我的机器上运行,mysql 在 docker 中,然后在 docker 上运行 pip 将不起作用。 @hoefling 在询问之前,我已经检查了您提出的所有链接。首先,我使用的是 Mac。其次,我正在尝试使我的本地连接器与 docker 容器一起使用。 @Light.G,是的。我做到了。错误是一样的 【参考方案1】:

因为mysql:5.7的官方镜像不包含libmysqlclient-dev

只需安装此软件包并重试。

docker exec -it my_db bash
apt-get update
apt-get install libmysqlclient-dev

如果我在测试中遇到的 pip 有问题,请运行

pip install --upgrade setuptools

https://hub.docker.com/_/mysql/

https://github.com/docker-library/mysql/blob/9d1f62552b5dcf25d3102f14eb82b579ce9f4a26/5.7/Dockerfile

【讨论】:

当我在 docker 上安装了 python 和 Mysql,我在本地安装了 MySQL 和 python 时,它可以工作。 @Guerrato Docker 镜像是一堆文件和目录,就像 Linux 本身一样。当然,docker image 还包含其他文件来声明 docker daemon 如何处理上面的文件。所以在图像 mysql:5.7 中,它不包括额外的文件(包),但那些 mysql 需要。总之,在 mysql:5.7 中安装其他包不是最佳实践。我们最好让它尽可能薄。 这样你就可以扩展mysql镜像并为自己做相应的修改 非常感谢大家,但问题不在于我的 docker。我按照zehengl.github.io/2017/12/17/pip-install-mysqlclient-on-macos 解决了这个问题

以上是关于在 Docker 中找不到 MySQL 的 mysql_config [重复]的主要内容,如果未能解决你的问题,请参考以下文章

Docker - 在 docker 容器日志中找不到模块

Pyspark 在 docker 中找不到 csv

Prisma 随机在 jenkins 中找不到 docker 图像

在当前项目和插件组中找不到前缀“docker”的插件

在 docker php 容器中找不到 MySQLi

在容器中找不到 Docker“/usr/bin/php”