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 ......
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」