docker容器中如何安装vim

发布时间 - 2021-01-13 00:00:00    点击率:

起因:

(学习视频分享:编程视频)

需要改动一些配置文件,但是突然发现没有安装vi命令。

jenkins@jenkins-ci-jenkins-primary-1:/$ vimbash: vim: command not found

现在但是进去docker容器里面发现没有vi或者vim。于是想要安装

jenkins@jenkins-ci-jenkins-primary-1:/$ apt-get install viE: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?jenkins@jenkins-ci-jenkins-primary-1:/$

安装的时候发现没有root 权限,于是我只能跑到宿主主机上去拿root权限

[root@rancher ~]# sudo docker exec -it -u root 8745541a21226a2a064219da9b55b04aa5c43ceed84195b8555531026a5f6f56 bashroot@jenkins-ci-jenkins-primary-1:/# root@jenkins-ci-jenkins-primary-1:/# root@jenkins-ci-jenkins-primary-1:/# apt-get installReading package lists... DoneBuilding dependency treeReading state information... Done0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.root@jenkins-ci-jenkins-primary-1:/# apt-get install viReading package lists... DoneBuilding dependency treeReading state information... DoneE: Unable to locate package vi

发现用root进去,还是不能安装,原因是:没有更新APT库,那我们更新一下就好了

apt-get updateapt-get upgrade

执行命令如下

root@jenkins-ci-jenkins-primary-1:/# apt-get updateGet:1 http://security.debian.org stretch/updates 
InRelease [94.3 kB]Ign:2 http://deb.debian.org/debian stretch InReleaseGet:3 http://deb.debian.org/debian 
stretch-updates InRelease [91.0 kB]Get:4 http://deb.debian.org/debian stretch Release [118 kB]Get:5 
http://security.debian.org stretch/updates/main amd64 Packages [650 kB]Get:6 http://deb.debian.org/debian 
stretch-updates/main amd64 Packages [33.7 kB]Get:7 http://deb.debian.org/debian stretch Release.gpg [2410 
B]Get:8 http://deb.debian.org/debian stretch/main amd64 Packages [9476 kB]Fetched 10.5 MB in 13min 51s 
(12.6 kB/s)                                                                                                                            
Reading package lists... Doneroot@jenkins-ci-jenkins-primary-1:/# apt-get upgradeReading package lists... 
DoneBuilding dependency treeReading state information... DoneCalculating upgrade... DoneThe following 
packages will be upgraded:  apt base-files bsdutils bzr ca-certificates ca-certificates-java curl dbus 
debian-archive-keyring dirmngr dpkg e2fslibs e2fsprogs gcc-6-base git git-man gnupg  gnupg-agent gpgv 
iproute2 java-common libapparmor1 libapt-pkg5.0 libatk-wrapper-java libatk-wrapper-java-jni libblkid1 
libc-bin libc6 libcomerr2 libcups2  libcurl3 libcurl3-gnutls libdbus-1-3 libexpat1 libfdisk1 libfreetype6 
libgcc1 libgcrypt20 libgdk-pixbuf2.0-0 libgdk-pixbuf2.0-common libglib2.0-0 libglib2.0-data  libgnutls30 
libicu57 libidn11 liblcms2-2 libldap-2.4-2 libldap-common libmount1 libncurses5 libncursesw5 libnghttp2-14 
libperl5.24 libpng16-16 libprocps6  libpython2.7-minimal libpython2.7-stdlib libsasl2-2 libsasl2-modules-db 
libserf-1-1 libsmartcols1 libsoup-gnome2.4-1 libsoup2.4-1 libsqlite3-0 libss2 libssh2-1  libssl1.0.2 
libssl1.1 libstdc++6 libsvn1 libsystemd0 libtasn1-6 libtiff5 libtinfo5 libudev1 libuuid1 libvorbis0a 
libvorbisenc2 libwayland-client0  libwayland-cursor0 libwayland-server0 libx11-6 libx11-data libx11-dev 
libx11-doc libx11-xcb1 libxcursor1 libxkbcommon0 libxml2 mount multiarch-support  ncurses-base ncurses-bin 
openjdk-8-jdk openjdk-8-jdk-headless openjdk-8-jre openjdk-8-jre-headless openssh-client openssl perl 
perl-base perl-modules-5.24 procps  python-bzrlib python2.7 python2.7-minimal sensible-utils 
shared-mime-info subversion tzdata unzip util-linux wget113 upgraded, 0 newly installed, 0 to remove 
and 0 not upgraded.Need to get 108 MB of archives.After this operation, 2933 kB of additional disk 
space will be used.Do you want to continue? [Y/n]

安装vi

root@jenkins-ci-jenkins-primary-1:/# apt-get install vimReading package lists... DoneBuilding dependency treeReading state information... DoneThe following additional packages will be installed:  libgpm2 vim-common vim-runtime xxdSuggested packages:  gpm ctags vim-doc vim-scriptsThe following NEW packages will be installed:  libgpm2 vim vim-common vim-runtime xxd0 upgraded, 5 newly installed, 0 to remove and 0 not upgraded.Need to get 6769 kB of archives.After this operation, 31.2 MB of additional disk space will be used.Do you want to continue? [Y/n] yGet:1 http://deb.debian.org/debian stretch/main amd64 xxd amd64 2:8.0.0197-4+deb9u3 [132 kB]Get:2 http://deb.debian.org/debian stretch/main amd64 vim-common all 2:8.0.0197-4+deb9u3 [159 kB]Get:3 http://deb.debian.org/debian stretch/main amd64 libgpm2 amd64 1.20.4-6.2+b1 [34.2 kB]Get:4 http://deb.debian.org/debian stretch/main amd64 vim-runtime all 2:8.0.0197-4+deb9u3 [5409 kB]48% [4 vim-runtime 2717 kB/5409 kB 50%]

测试:

Vi 1.txt

相关推荐:docker教程


# docker  # vim  # 跑到  # 我只能  # 配置文件  # 去拿  # 没有安装  # 就好了  # Reading  # Doneroot  # MB  # min 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 详解jQuery中的事件  微信小程序 require机制详解及实例代码  如何在香港服务器上快速搭建免备案网站?  详解CentOS6.5 安装 MySQL5.1.71的方法  uc浏览器二维码扫描入口_uc浏览器扫码功能使用地址  Laravel如何配置.env文件管理环境变量_Laravel环境变量使用与安全管理  JavaScript中的标签模板是什么_它如何扩展字符串功能  Laravel怎么在Blade中安全地输出原始HTML内容  高防服务器租用首荐平台,企业级优惠套餐快速部署  Laravel Blade组件怎么用_Laravel可复用视图组件的创建与使用  Laravel怎么配置.env环境变量_Laravel生产环境敏感数据保护与读取【方法】  Laravel怎么返回JSON格式数据_Laravel API资源Response响应格式化【技巧】  iOS验证手机号的正则表达式  Laravel如何实现数据库事务?(DB Facade示例)  原生JS获取元素集合的子元素宽度实例  如何在阿里云高效完成企业建站全流程?  Laravel怎么发送邮件_Laravel Mail类SMTP配置教程  弹幕视频网站制作教程下载,弹幕视频网站是什么意思?  js实现点击每个li节点,都弹出其文本值及修改  JavaScript如何实现继承_有哪些常用方法  三星、SK海力士获美批准:可向中国出口芯片制造设备  如何快速搭建高效可靠的建站解决方案?  Android okhttputils现在进度显示实例代码  悟空浏览器如何设置小说背景色_悟空浏览器背景色设置【方法】  php结合redis实现高并发下的抢购、秒杀功能的实例  如何基于PHP生成高效IDC网络公司建站源码?  怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?  linux写shell需要注意的问题(必看)  Laravel如何处理CORS跨域问题_Laravel项目CORS配置与解决方案  大型企业网站制作流程,做网站需要注册公司吗?  高防网站服务器:DDoS防御与BGP线路的AI智能防护方案  微信小程序 canvas开发实例及注意事项  java ZXing生成二维码及条码实例分享  学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?  如何在腾讯云免费申请建站?  香港服务器网站卡顿?如何解决网络延迟与负载问题?  浅析上传头像示例及其注意事项  Laravel广播系统如何实现实时通信_Laravel Reverb与WebSockets实战教程  Laravel如何正确地在控制器和模型之间分配逻辑_Laravel代码职责分离与架构建议  Linux系统命令中screen命令详解  如何在云服务器上快速搭建个人网站?  javascript中的数组方法有哪些_如何利用数组方法简化数据处理  Laravel如何监控和管理失败的队列任务_Laravel失败任务处理与监控  Laravel如何为API编写文档_Laravel API文档生成与维护方法  Laravel如何获取当前登录用户信息_Laravel Auth门面使用与Session用户读取【技巧】  微信小程序 五星评分(包括半颗星评分)实例代码  Bootstrap CSS布局之列表  简单实现jsp分页  Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程  Laravel如何实现本地化和多语言支持?(i18n教程)