I am using the MySQL Docker images, and I can connect to this Docker with mysqli_connect('mysql', 'docker', 'docker');
in php
Here is docker ps
:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c271f8e68378 afraidjpg/nginx:nginx "nginx -g 'daemon of…" 2 hours ago Up 2 hours 0.0.0.0:80->80/tcp, 0.0.0.0:10086->10086/tcp nginx
92d7c923f777 afraidjpg/php:php56 "docker-php-entrypoi…" 2 hours ago Up 2 hours 0.0.0.0:9000->9000/tcp php
68b818bd68c4 afraidjpg/mysql:mysql "docker-entrypoint.s…" 2 hours ago Up 2 hours 0.0.0.0:3306->3306/tcp, 33060/tcp mysql
I use --link mysql
option when starting PHP Docker.
IP of MySQL Docker is 172.17.0.2.
My mac's IP is 192.168.1.50
here is user in mysql:
mysql> select User, Host from mysql.user;
+--------+-----------+
| User | Host |
+--------+-----------+
| docker | % |
| root | localhost |
+--------+-----------+
2 rows in set (0.00 sec)
then I tried to connect mysql with navicat and mysql-workbench
host:192.168.1.50, user:docker, pass:docker Access denied for user 'docker'@'%%' (using password: YES)
host:127.0.0.1, user:docker, pass:docker Access denied for user 'docker'@'%%' (using password: YES)
host:172.17.0.2, user:docker, pass:docker Can't connect to MySQL server on '172.17.0.2
all get the error with Access denied for user 'docker'@'%%' (using password: YES)
if l tried to change user from docker to root, error become Access denied for user 'docker'@'172.17.0.1' (using password: YES)
I found some article before, and followed their step, but always failed. I don't where I was wrong
here are some screenshot
update I cannot ping from local to docker, and there is no ping command in docker so I cannot do the test to ping from docker to local
zk ~/Documents/PHP/www/docker $ ping 172.17.0.2
PING 172.17.0.2 (172.17.0.2): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
Request timeout for icmp_seq 3
more update
I can connect to mysql with command in terminal with mysql -udocker -p --portocol=tcp
more details
error message is Access denied for user 'docker'@'%%' (using password: YES)
, It said @'%%'
, I know what the '%' is, but what's mean of '%%'?