繁体   English   中英

启动mysql服务器后Docker容器死亡

[英]Docker container dies after starting mysql server

我正在尝试从ubuntu基础构建一个sql docker容器。 我构建图像并运行它。 并能够确认它正在运行,但是很快就死了。 我如何保持它的生命?

Docker文件

FROM ubuntu

RUN apt-get update && \
    apt-get install -y mysql-server
COPY run.sh /sbin/run.sh
COPY createDBTable.sql /
RUN chmod 755 /sbin/run.sh
CMD ["./sbin/run.sh"]

run.sh

#!/bin/sh
service mysql start
cat createDBTable.sql | mysql -u root
echo "show databases" | mysql -u root

docker run的输出

 * Starting MySQL database server mysqld
   ...done.
Database
information_schema
<new table>
mysql
performance_schema
sys

我使用上面提到的dockerfile创建了一个docker容器。 我不是使用-d标志在后台运行它,而是使用-it在交互模式下启动它。 一段时间后,容器停止并显示以下错误-

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

您可以使用Google尝试各种方法来摆脱上述错误。

如果容器有问题,则无法使其存活。 我建议运行以下命令:

docker logs mssql_container_name


用容器名称替换“ mssql_container_name”。 如果没有得到名称,请键入: docker ps -a并在那里获得名称。 如果您愿意,可以在此处将答案发布到docker日志中,也许我们可以为您提供帮助。 但是,这是您找出容器发生了什么的方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM