Docker events
command may help and Docker logs command can fetch logs even after the image failed to start.
First start docker events
in the background to see whats going on.
docker events&
Then run your failing docker run ...
command.
Then you should see something like the following on screen:
2015-12-22T15:13:05.503402713+02:00 xxxxxxxacd8ca86df9eac5fd5466884c0b42a06293ccff0b5101b5987f5da07d: (from xxx/xxx:latest) die
Then you can get the startup hex id from previous message or the output of the run command. Then you can use it with the logs command:
docker logs <copy the instance id from docker events messages on screen>
You should now see some output from the failed image startup.
As @alexkb suggested in a comment: docker events&
can be troublesome if your container is being constantly restarted from something like AWS ECS service. In this scenario it may be easier to get the container hex id out of the logs in /var/log/ecs/ecs-agent.log.<DATE>
. Then use docker logs <hex id>
.
Try restarting the docker service after upgrading Docker (sudo service docker restart
). That may be the cause of:
You still have an old version of Docker running.
I had a very similar issue, ugraded Docker, and kept running into the same error message until I restarted the service.
Best Answer
Access the docker container using it's ID
Navigate to /etc/mysql/my.cnf
Install Nano text editor
Export environment variable
Edit your file