运行 MySQL docker 图片,使用基于 Debian,在 CentOS 7 上
Running MySQL docker image, using a Debian base, on CentOS7
我已经从 docker hub 中提取了 MySQL 图像并尝试使用
运行 它
docker run (-i) (-t) -d -p 3306:3306 --name test-mysql -e MYSQL_ROOT_PASSWORD=password -d mysql:latest —innodb_buffer_pool_size=1G —character-set-server=utf8 —collation-server=utf8_general_ci —lower_case_table_names=1
但容器立即退出。
docker ps
的输出为空,而 docker ps -a
的输出为:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
93ffbf44b3c6 mysql:latest "docker-entrypoint..." 9 seconds ago Exited (127) 8 seconds ago test-mysql
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
centos/mysql-56-centos7 latest 1d5bc23ca83b 25 hours ago 401MB
mysql latest 11615e225c92 5 days ago 408MB
我在 AWS 上的 CentOS 上 运行ning docker,从 MySQL 的 Docker file 我可以看到图像使用的是 Debian 基础。
我也尝试过 运行 前景和背景的图像,但似乎都不起作用。
我也尝试过使用 CentOS base,但即使这样也会立即退出。
我 运行宁 docker 作为 root。
要事第一。 OS 你运行宁什么并不重要。图像建立在哪个 OS 上并不重要。这就是 Docker 的力量。您可以在 Ubuntu 中使用基于 运行 CentOS 的容器,反之亦然。
如果容器退出,运行在容器内处理时会出现一些错误。 Code 128 太含糊了。要找出真正阻止您 运行ning MySQL 容器的原因,请查看容器日志:
docker logs [containerId]
错误出在 运行 命令本身。应该使用双破折号而不是单破折号来覆盖数据库配置属性。所以正确的docker运行命令如下
docker run -d -p 3306:3306 --name test-mysql -e MYSQL_ROOT_PASSWORD=password -d mysql:latest --innodb_buffer_pool_size=1G --character-set-server=utf8 --collation-server=utf8_general_ci --lower_case_table_names=1
感谢@Sergey Kovalev 的提示
我已经从 docker hub 中提取了 MySQL 图像并尝试使用
运行 它docker run (-i) (-t) -d -p 3306:3306 --name test-mysql -e MYSQL_ROOT_PASSWORD=password -d mysql:latest —innodb_buffer_pool_size=1G —character-set-server=utf8 —collation-server=utf8_general_ci —lower_case_table_names=1
但容器立即退出。
docker ps
的输出为空,而 docker ps -a
的输出为:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
93ffbf44b3c6 mysql:latest "docker-entrypoint..." 9 seconds ago Exited (127) 8 seconds ago test-mysql
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
centos/mysql-56-centos7 latest 1d5bc23ca83b 25 hours ago 401MB
mysql latest 11615e225c92 5 days ago 408MB
我在 AWS 上的 CentOS 上 运行ning docker,从 MySQL 的 Docker file 我可以看到图像使用的是 Debian 基础。
我也尝试过 运行 前景和背景的图像,但似乎都不起作用。
我也尝试过使用 CentOS base,但即使这样也会立即退出。
我 运行宁 docker 作为 root。
要事第一。 OS 你运行宁什么并不重要。图像建立在哪个 OS 上并不重要。这就是 Docker 的力量。您可以在 Ubuntu 中使用基于 运行 CentOS 的容器,反之亦然。
如果容器退出,运行在容器内处理时会出现一些错误。 Code 128 太含糊了。要找出真正阻止您 运行ning MySQL 容器的原因,请查看容器日志:
docker logs [containerId]
错误出在 运行 命令本身。应该使用双破折号而不是单破折号来覆盖数据库配置属性。所以正确的docker运行命令如下
docker run -d -p 3306:3306 --name test-mysql -e MYSQL_ROOT_PASSWORD=password -d mysql:latest --innodb_buffer_pool_size=1G --character-set-server=utf8 --collation-server=utf8_general_ci --lower_case_table_names=1
感谢@Sergey Kovalev 的提示