rSim
rSim

Reputation: 374

Docker, unable to connect WordPress to MySQL

I'm trying to link two containers together, I was able to connect a PhpMyAdmin container with a MySQL container, but nothing seem to work when I'm using a WordPress container.

I tried different things, actually I'm using this command to run a MySQL container:

sudo docker run --name sql -e MYSQL_ROOT_PASSWORD=pass mysql

and this one to set up the WordPress container:

sudo docker run --name wpress -e WORDPRESS_DB_USER=root -e WORDPRESS_DB_PASSWORD=pass -e WORDPRESS_DB_HOST=172.17.0.2 -p 8085:80 --link sql:mysql wordpress

MySQL container work fine, but I have this output from wpress:

MySQL Connection Error: (2054) The server requested authentication method unknown to the client

Warning: mysqli::__construct(): The server requested authentication method unknown to the client [caching_sha2_password] in Standard input code on line 22

What I am doing wrong?

Edit:

I was able to connect the wpress container to sql container a couple of time during some test by adding a port to WORDPRESS_DB_HOST, which will give:

sudo docker run --name wpress -e WORDPRESS_DB_USER=root -e WORDPRESS_DB_PASSWORD=pass -e WORDPRESS_DB_HOST=172.17.0.2:3306 -p 8085:80 wordpress

(I also remove the --link option, it worked without it). So it work 2-3 times, but it doesn't work anymore.

Upvotes: 0

Views: 1529

Answers (2)

ThomasV
ThomasV

Reputation: 121

I had same problem/error.
This is what I had to do for mysql and wordpress:

docker run --name wordpressdb -e MYSQL_ROOT_PASSWORD=password -d mysql

 docker exec -it wordpressdb bash
 #inside run:
  mysql -uroot -ppassword
 #paste
  ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password';
  exit
 exit
docker run --name wordpress -e WORDPRESS_DB_USER=root -e WORDPRESS_DB_PASSWORD=password -p 8080:80 --link wordpressdb:mysql -d wordpress

Upvotes: 0

rSim
rSim

Reputation: 374

It seem to be a version error. Use an image with a different version of mysql, mysql:5.7 for example, and it should work.

Upvotes: 1

Related Questions