在docker的某些镜像中往往和我们的需求有些差距,我们需要改造。在改造的过程中我们在dockerfile中不要运行NTRYPOINT ,因为这样可能会阉割掉镜像本身的ENTRYPOINT 里面的启动脚本。
解决办法:修改原本的启动脚本
但是初学的同学可能会问:我怎么知道原来的启动脚本是什么?
docker容器运行的时候一定要启动一个永不停歇的前端进程,这个前端进程往往就是在服务启动脚本后面。所以我们找到这个前端进程就好了,如下:
运行命令:ps -ef
看,启动脚本就在/opt/updat.sh
如果需要改造改镜像的时候就在这个脚本后面加上自己的代码就好了。
具体操作办法:我们往往是把原来的启动脚本拷贝出来,在后面加上自己的脚本,然后在dockerfile中把这个新的脚本ADD进入原来镜像的原来路径下去覆盖原来的脚本,并且重新给这个脚本修改用户组和权限。
改造成功