首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法使用mysqlclient从docker连接

问无法使用mysqlclient从docker连接
EN

Stack Overflow用户
提问于 2017-12-28 05:06:17
回答 1查看 394关注 0票数 0

我正在尝试连接到我的mysql容器,但是每当我尝试运行mysql -uroot -p时,我总是得到bash: mysql: command not found,但是当我尝试运行pip3 freeze时,mysql已经安装在docker容器中了。

代码语言:javascript
复制
alembic==0.9.6
appdirs==1.4.3
bcrypt==3.1.4
certifi==2017.11.5
cffi==1.11.2
chardet==3.0.4
click==6.7
elasticsearch==5.5.1
flasgger==0.8.0
Flask==0.12.2
Flask-Cors==3.0.3
gevent==1.2.2
greenlet==0.4.12
idna==2.6
iso3166==0.8
itsdangerous==0.24
Jinja2==2.10
jsonschema==2.6.0
Mako==1.0.7
MarkupSafe==1.0
mistune==0.8.3
mock==2.0.0
mysqlclient==1.3.12
packaging==16.8
pbr==3.1.1
pybuilder==0.11.12
pycparser==2.18
pycrypto==2.6.1
pyparsing==2.2.0
python-dateutil==2.6.1
python-editor==1.0.3
PyYAML==3.12
redis==2.10.6
requests==2.18.4
six==1.11.0
SQLAlchemy==1.2.0
tblib==1.3.2
ujson==1.35
urllib3==1.21.1
validate-email==1.3
Werkzeug==0.13

如您所见,mysqlclient已安装。如果我尝试使用ping检查我的docker中是否可以访问mysql容器。它工作正常,我能够得到一个响应。既然显示为bash: mysql: command not found,我现在如何连接?

-更新--

在运行docker run之后,我连接到docker容器内部并运行pip install --no-cache-dir -r requirements.txt,下面是输出

​

​

现在它说要求已经满足了。我不确定,但这是否意味着它已经安装了软件包?下面是我的dockerfile

代码语言:javascript
复制
FROM python:3.5.2
ADD deployment /root/.ssh
RUN chmod 700 /root/.ssh/id_rsa
RUN ssh-keyscan -t rsa bitbucket.org > /root/.ssh/known_hosts
RUN mkdir -p /app
ADD . /app
WORKDIR /app
RUN pip install --no-cache-dir -r requirements.txt
WORKDIR /app/myproject
CMD ["python", "./init.py", "-c", "config/config.yaml"]
EN

回答 1

Stack Overflow用户

发布于 2017-12-28 08:24:21

这里的问题是您的主机上没有安装命令行界面命令mysql。然而,它很可能安装在您的docker容器中。正如其中一条注释所指出的,与pip一起安装的mysqlclient不会安装mysql命令行工具。

作为一种快速解决方法,我建议在mysql容器中运行mysql命令,如下所示:

代码语言:javascript
复制
docker exec -it <container id> mysql -u root -h localhost -p
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47998646

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档