使用命令
docker run --name mysql -e MYSQL_ROOT_PASSWORD=mysql -d mysql:5.7 -p 3306:3306
在Docker上启动MYSQL容器失败,查看容器的log:
docker logs <container_id>
2020-05-04 12:13:01+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 5.7.30-1debian10 started.
2020-05-04 12:13:01+00:00 [ERROR] [Entrypoint]: mysqld failed while attempting to check config
command was: mysqld -p 3306:3306 --verbose --help
2020-05-04T12:13:01.058246Z 0 [ERROR] mysqld: unknown option '-p'
可以看出,mysqld无法识别-p参数,这是由于Docker是对参数顺序敏感的,-p参数加在命令最后表示由mysqld来处理该参数,而实际上-p应该是docker本身的参数,因此应把命令修改为:
docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=mysql -d mysql:5.7
这样,容器就可以正常启动了。