我正在尝试从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
答案 0 :(得分:1)
我使用上面提到的dockerfile创建了一个docker容器。我不是使用-d
标志在后台运行它,而是使用-it
以交互模式启动它。一段时间后,容器停止并显示以下错误-
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
您可以尝试各种方法来使用Google摆脱上述错误。
答案 1 :(得分:0)
如果容器有问题,则无法使其存活。我建议运行以下命令:
docker logs mssql_container_name
用容器名称替换“ mssql_container_name”。如果没有得到名称,请键入:docker ps -a
并在那里获得名称。如果您愿意,可以在此处将答案发布到docker日志中,也许我们可以为您提供帮助。但这是您找出发生在容器中的事情的方式。