Docker- 解决Image内部无VIM编辑器问题

    我们就考虑是不是可以从基础镜像来入手,(现在使用的是java:8)更换一个带有vim编辑器的基础镜像不就行了吗,说干就干;

# 基础镜像使用java	
FROM openjdk:8-jdk-alpine	
# 作者	
MAINTAINER daopinz	
# 

    制作好镜像后,容器可以正常启动并提供服务,进入容器,发现只有linux自带的vi,并没有我们常用的VIM;好吧有就行。。。。当我换一个带有比较复杂业务(连接两个数据库、连接多个服务),制作镜像并启动容器的时候傻眼了,竟然启动失败,看来这个基础镜像还是太‘简陋’了。

    怎么办?首先要保证服务启动正常,再者考虑vim编辑器的问题吧。那就只能使用java:8基础镜像,往里面添加vim组件可以吧,在制作镜像的时候加入vim的插件包:

# 基础镜像使用java	
FROM java:8	
# 作者	
MAINTAINER daopinz	
# 将vim插件包添加到容器内	
ADD vim_c75.tar.gz vim_c75.tar.gz	
# 执行命令	
CMD ["tar","-zxvf","vim_c75.tar.gz"]	
CMD ["sh", "vim_c75.tar.gz/vim_c75/install.sh"]	

    cat  install.sh

#!/bin/bash	
yum localinstall -y *

    容器启动后,发现tar.gz包是正常解压了,但是.sh脚本执行似乎没有生效,于是手动在容器内部执行一次.sh脚本,额,报了yum command not found ....难道还要导入yum的插件???看来此路不通;

    网上问问大佬这样,发现大多数的博客是使用:

 # 更新一下,命令:	
 sudo apt-get update	

	
 # 再安装即可成功:	
 sudo apt-get install vim

    我也在启动好的容器内部执行了一次上面的命令,结果是可以的,但是执行的时间未免有点太过漫长。

    继续试验更好的方法,learning ing ......

posted @ 2022-01-27 18:36  zhangdaopin  阅读(235)  评论(0编辑  收藏  举报