我正在使用基于dockerfile/ubuntu
的图像nginx
。 连接到docker集装箱的shell
docker exec -it <container_id> /bin/bash
我想做一个git pull
所以我试图安装git
但apt
无法find包:
root@a71e45d5cd40:/# apt-get install git Reading package lists... Done Building dependency tree Reading state information... Done E: Unable to locate package git
我们怎样才能从该图像安装git
,为什么它缺less?
cat /etc/apt/sources.list
deb http://httpredir.debian.org/debian wheezy main deb http://httpredir.debian.org/debian wheezy-updates main deb http://security.debian.org wheezy/updates main deb http://nginx.org/packages/mainline/debian/ wheezy nginx
cat /etc/apt/sources.list.d/*
cat: /etc/apt/sources.list.d/*: No such file or directory
apt-cache madison git
N: Unable to locate package git
发生这种情况的原因是apt存储库尚未更新,创建映像之后清理apt存储库和tmp文件是很常见的做法。
为了解决这个问题,你需要在安装git之前运行apt-get update
,如果安装行更改,最好同时使用update和install命令来更新缓存。
RUN apt-get update && apt-get install -y git
使用-y
可以方便地自动回答所有问题。