student
student

Reputation: 169

cannot run container after commit changes

Just basic and simple steps illustrating what I have tried:

  1. docker pull mysql/mysql-server
  2. sudo docker run -i -t mysql/mysql-server:latest /bin/bash
  3. yum install vi
  4. vi /etc/my.cnf -> bind-address=0.0.0.0
  5. exit
  6. docker ps
  7. docker commit new_image_name
  8. docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=secret -d new_image_name

docker ps -a STATUS - Exited (1)

Please let me know what I did wrong.

Upvotes: 3

Views: 344

Answers (1)

VonC
VonC

Reputation: 1328142

Instead of trying to modify an existing image, try and use (for testing) MYSQL_ROOT_HOST=%.
That would allow root login from any IP. (As seen in docker-library/mysql issue 241)

sudo docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -e MYSQL_ROOT_HOST=% -d mysql/mysql-server:latest

The README mentions:

By default, MySQL creates the 'root'@'localhost' account.
This account can only be connected to from inside the container, requiring the use of the docker exec command as noted under Connect to MySQL from the MySQL Command Line Client.
To allow connections from other hosts, set this environment variable.
As an example, the value "172.17.0.1", which is the default Docker gateway IP, will allow connections from the Docker host machine.

Upvotes: 0

Related Questions