简单docker镜像修改方式

时间:2023-03-09 06:11:45
简单docker镜像修改方式

• 创建Dockerfile,文件内容如下:
FROM nps:v1.0.1
ENTRYPOINT ["/usr/bin/init.sh"]

• 启动基础镜像:docker run -it --entrypoint /bin/bash IMAGE_ID
• 修改/etc/ssh/sshd_config的配置:将所有的PermitRootLogin no=>PermitRootLogin yes,可以使用命令行修改:sed -i 's/PermitRootLogin no/PermitRootLogin yes/g' /etc/ssh/sshd_config
• 修改镜像的/usr/bin/init.sh文件,在该文件的start.sh&命令之前增加/usr/sbin/sshd -D &
• 将修改好的docker导出为xxx.tar,docker export -o nps_1.0.1.tar CONTAINER_ID(docker ps的结果,docker image是IMAGE_ID)
• 导入新版本 cat nps_1.0.1.tar | docker import - nps:v1.0.1(docker image可查看)
• 制作新的docker镜像,docker build -t nps:v1.0.2 ./,并查看制作的镜像:docker images
• 导出新生成的镜像文件,docker save -o nps_v1.0.2.tar nps:v1.0.2
• 注:docker commit -m COMMENTS CONTAINER_ID nps:v1.0.2 也可以在运行镜像后,使用这种方式提交修改,并导出镜像文件