默认情况下,我使用nginx / php-fpm / percona进行设置。
我检查了容器内的用户和数据库。完美的作品。 我检查了Percona容器的端口可访问性: nmap -p 3306 172.28.0.8
Starting Nmap 7.40 ( https://nmap.org )
Nmap scan report for 172.28.0.8
Host is up (0.00019s latency).
PORT STATE SERVICE
3306/tcp open mysql
MAC Address: ******* (Unknown)
Nmap done: 1 IP address (1 host up) scanned in 0.62 seconds
我尝试使用容器名称和IP连接到percona,但没有运气:
$dsn = "mysql:host=172.28.0.8;port=3307;dbname=example;user=example; password=pwd";
或
$dsn = "mysql:host=percona;port=3307;dbname=example;user=example; password=pwd";
输出:
SQLSTATE [HY000] [2002]连接被拒绝
端口3307被映射到compose yml配置中。也使用 EXPOSE 3306 。
如果我将主机更改为错误的名称,则表明该主机不存在。这意味着它看到了容器,但由于某种原因无法从那里运行mysql。
更多-我可以使用SequelPro连接到数据库。出于某种原因,似乎php-fpm无法访问Percona ...
有什么主意吗?
最好, 安东