Search code examples
phpmysqldockerlamptestlink

Docker app not able to access MySQL running in another container


I am trying to bring up a dockerized instance of Testlink (LAMP application) and connect it to an instance of MYSQL running in another container.

$ sudo docker network create mynetwork

Instantiate the container with MySQL

$ docker run -d --name mysql -p 3306:3306 --network mynetwork -v /Users/dockervol/mysql:/var/lib/mysql -e 'MYSQL_ROOT_NAME=root' -e 'MYSQL_ROOT_PASSWORD=password' mysql

Instantiate the container with Testlink

$ docker run -d -p 80:80 --network mynetwork --name testlink suzukishunsuke/testlink

When I access http://localhost/testlink and follow the standard installation tests it seems to work. The two containers are linked but when testlink tries to login to mysql it says Access denied.

Access denied for user 'root'@'156.18.0.2' (using password: YES)

Solution

  • Bear in mind that the mysql image only set the password that you provide with that environment variable when it starts for the first time (when it initializes its data directory).

    So, if you think that this is your case, empty your mysql data volume (loosing the data) and start it again, or set the root password manually.