docker启动mysql镜像:
docker run -d -p 3306:3306 --name mysql mysql
直接退出,通过命令查看原因:
docker logs mysql
内容如下:
2023-12-06 07:50:46+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.2.0-1.el8 started.
2023-12-06 07:50:46+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
2023-12-06 07:50:46+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.2.0-1.el8 started.
2023-12-06 07:50:46+00:00 [ERROR] [Entrypoint]: Database is uninitialized and password option is not specified
You need to specify one of the following as an environment variable:
- MYSQL_ROOT_PASSWORD
- MYSQL_ALLOW_EMPTY_PASSWORD
- MYSQL_RANDOM_ROOT_PASSWORD
2023-12-06 07:53:42+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.2.0-1.el8 started.
2023-12-06 07:53:42+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
2023-12-06 07:53:42+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.2.0-1.el8 started.
2023-12-06 07:53:42+00:00 [ERROR] [Entrypoint]: Database is uninitialized and password option is not specified
You need to specify one of the following as an environment variable:
- MYSQL_ROOT_PASSWORD
- MYSQL_ALLOW_EMPTY_PASSWORD
- MYSQL_RANDOM_ROOT_PASSWORD
原因已经说的很清楚了,没有设置root密码。更改启动容器命令:
docker run -d -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=root mysql