2016-08-21 66 views
0

当试图将dockerized PHP应用程序连接到MySQL的容器,我得到以下错误:SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)DOCKER + PDO:SQLSTATE [HY000] [2002]无法通过套接字连接到本地MySQL服务器'/var/run/mysqld/mysqld.sock'(2)

Dockerfile:

FROM tutum/apache-php 
RUN rm -fr /app 
COPY . /app 

ENV DB_HOST=192.168.99.100 
ENV DB_NAME=azk 
ENV DB_USER=root 
ENV DB_PW=my-secret-pw 

如果我不使用PDO的连接工作,所以musst有毛病PDO,但我不知道是什么...

+0

请显示您的代码以连接到数据库。 – Chris

回答

0

PDO使用unix套接字连接而不是tcp。请参阅answer如何强制使用tcp连接。

你的情况可能你不应用ENV DB_HOST到php应用程序配置文件。 (您可以使用getenv('DB_HOST')函数)

相关问题