0

譬如网上下的mysql,canal等docker image
如何预安装vim,这样每次重启的时候不用进容器里手动去装vim
想到的方案

1 修改Dockerfile,但是这个image是已有的,怎么修改?
2 docker-compose.yml里用command安装,这样如果已有的image里Dockerfile里的CMD会被覆盖,有风险

怎么办?

esolve 890
11月4日提问

查看全部 3 个回答

0

如果有dockerfile可以修改自行build。
如果没有的话也是可以的:

  1. docker run -it --name test image_name /sh
  2. 然后命令安装需要的软件vim等
  3. exit退出容器
  4. 此时docker ps -a 是可以看到刚才的容器test的,里面已经有了安装的软件
  5. 将容器打包为镜像 docker commit test myimage:v1
  6. 然后就可以尽情使用myimage:v1镜像了

推荐答案

1

已采纳

以你原本的镜像为基础再做一个镜像,Dockerfile 大致是:

FROM <baseimage>
USER root
RUN apt-get update && apt-get install -y vim

如果基础镜像包管理工具是别的比如 yum 流程也是一样的。

推广链接