我正在运行一个集装箱与码头和mysql。我的镜像库是Ubuntu16,问题是当我执行/usr/bin/mysqld_safe --user=mysql --skip-grant-tables时,我的终端仍然是黑色的,我不能在里面输入或做错误的操作。是否有方法执行此命令并将过程发送到后台?这个容器需要执行命令,同时在后台运行mysql。
发布于 2017-12-11 20:42:07
您可以在行尾添加一个&,它将转到后台。
发布于 2017-12-11 20:50:55
手册
启动码头集装箱去功能化
docker run -d --name mysql <image> -- /usr/bin/mysqld_safe --user=mysql --skip-grant-tables
连接到容器并运行命令:
docker exec -it mysql sh
入口点
常用的方法是使用入口点脚本。
#!/bin/sh
# entrypoint.sh
/usr/bin/mysqld_safe --user=mysql --skip-grant-tables &
# more commands etc.将脚本设置为可执行文件
chmod 755 entrypoint.sh
然后在您的Dockerfile中:
ADD entrypoint.sh .
ENTRYPOINT ["./entrypoint.sh"]
https://stackoverflow.com/questions/47759928
复制相似问题