一、报错信息:docker “exec format error”

    1. 原因:在最终指定的run.shshell脚本中,没有标注文件的类型,如下:
    2. #!/bin/sh

    二、容器已经运行,但是容器内的服务没有启动

    1. 排查方向一:
    2. 在编译生成镜像的时候,run.sh中的使用的是sh /.../run.sh,这样可能导致服务启动不了;需要先cdrun.sh目录,再使用sh run.sh命令

    三、Dockerfile编写注意:
    在使用Docker时,可以使用docker run命令创建并启动一个容器,而在容器中,对长时间运行容器的要求是:其主程序需要一直在前台执行。如果我们创建Docker镜像的启动命令是后台执行程序,例如:

    1. $ nohup ./start.sh &

    则当容器启动完成后,会立即销毁。

    所以,一般在Dockerfile后面加上 tail -f /dev/null