docker-linux-teamcity没有vi/vim/ping/ 并且apt-get update也不能用咋办?

问题

docker  teamcity 的容器是linux的.但是比较瘦.

里面没有ping/nc之类的工具.

第一想法肯定是在docker环境中执行 apt-get update 然后开始安装各种命令工具了.


解决

如果直接在docker容器里面执行apt-get update的话 需要root权限.所以不要在里面执行.直接在宿主(Win/Mac/Linux)的cmd/终端/shell里面执行

        进入到docker容器的领空

docker exec -it 这里写docker的容器id的匹配字符 /bin/bash 

然后你就取得了docker里面的root权限

也可以附加参数 --user='root'

也就是类似这样:

docker exec -it --user='root' a5 /bin/bash 

其中  a5是容器的id的识别符.

比如你的容器id是012345789和011111111

那么指定容器的时候直接使用 012和011就能区分出来你要用哪个容器.相当于sql语句中的

where id like '012%'


然后由于你可能因为你的网络问题,有国际墙之类的,那就需要指定apt-get的镜像源地址信息.那么你又没有vi也没有vim怎么编辑源地址信息呢?

        更新镜像源信息

先进入到apt的目录

cd /etc/apt/

然后在源地址列表文件后面追加行.追加方式是使用echo >> xxxx.xxx的方法

echo deb http://mirrors.163.com/ubuntu/ trusty main restricted universe multiverse >> sources.list

echo deb http://mirrors.163.com/ubuntu/ trusty-security main restricted universe multiverse >> sources.list

echo deb http://mirrors.163.com/ubuntu/ trusty-updates main restricted universe multiverse >> sources.list

echo deb http://mirrors.163.com/ubuntu/ trusty-proposed main restricted universe multiverse >> sources.list

echo deb http://mirrors.163.com/ubuntu/ trusty-backports main restricted universe multiverse >> sources.list

echo deb-src http://mirrors.163.com/ubuntu/ trusty main restricted universe multiverse >> sources.list

echo deb-src http://mirrors.163.com/ubuntu/ trusty-security main restricted universe multiverse >> sources.list

echo deb-src http://mirrors.163.com/ubuntu/ trusty-updates main restricted universe multiverse >> sources.list

echo deb-src http://mirrors.163.com/ubuntu/ trusty-proposed main restricted universe multiverse >> sources.list

echo deb-src http://mirrors.163.com/ubuntu/ trusty-backports main restricted universe multiverse >> sources.list

然后再执行

        更新apt

apt-get update

就可以更新apt的列表信息了.

接下来就可以安装vim了

        安装你需要的东东

apt-get install iputils-ping


版权声明:本文为Afterwards_原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。