Tag: yum

尽早构build一个Docker容器,并为yum install安装不良的软件包列表

我的Dockerfile需要一些not-here-yet软件包not-here-yet它不在注册的软件仓库中。 RUN yum install -d 1 -y not-here-yet && yum clean all 如预期那样失败。 但是因为容器没有dnf ,即使它有相同的问题,下面的返回码也会返回0。 RUN yum install -d 1 -y inotify-tools not-here-yet && yum clean all yum在这方面的不好的validation给我留下了一个不完整的容器,除非Dockerfile的维护者知道哪些命令not-here-yet使用。 假设由于政策的原因,我不能在这个容器上安装dnf ,如果没有在列表中find任何一个软件包而不复制同一个RUN行一次又一次地安装一个软件包,我该如何使yum失败?

用于安装特定版本的Docker Community Edition yum CentOS的<version>string的格式

我知道如何安装最新版本的Docker CE,我几乎完全理解如何安装特定版本的Docker,因为我已经阅读这里和这里和这里 我的问题是,我无法找出版本stringdocker-ce-<version>的格式来安装特定版本的Docker Community Edition。 我努力了: yum install docker-ce-17.06 和 yum install docker-ce-17.06.0 和 yum install docker-ce-17.06.0.ce-1.el7.centos 我得到没有包docker-ce-可用的消息,如下所示: No package docker-ce-17-06.0.ce-1.el7.centos available. 我跑了 yum list docker-ce.x86_64 –showduplicates | sort -r 输出: * updates: centos.chicago.waneq.com Loading mirror speeds from cached hostfile Loaded plugins: fastestmirror, langpacks Installed Packages * extras: ftp.linux.ncsu.edu * epel: mirror.oss.ou.edu docker-ce.x86_64 17.06.0.ce-1.el7.centos docker-ce-stable […]

docker工人yum PYCURL错误

试图让我的版本安装yum软件包。 我正尝试在带有Yum镜像的离线机器上运行此操作。 我已经将–dns设置添加到dockerd,容器可以与我的yum镜像对话。 我使用的是centos:6作为我的基础, 我得到的错误是: http://mymirror/…/pkg.rpm : [Errno 14] PYCURL ERROR 18 – "transfer closed with 4380 bytes remaining to read" 这似乎是相当随机的。 我正在安装一个大的软件包列表,但不同的软件包每次都会失败。 有几次,一切都成功了……不知道什么是错的。

如何在部分隔离的主机上的docker容器中运行yum?

我有一台半隔离networking的机器。 我必须使用代理连接到互联网。 我已经validation,在我的主机上,我设置http_proxy环境variables后,我可以从公共Yum存储库接收更新。 现在我正在试图在我的机器上的Docker容器中做同样的事情,但似乎没有工作。 $docker run –rm -it –net=host rhel /bin/bash [root@MyCont] http_proxy=http://myproxy:1234/ [root@MyCont] echo -e "[base] \nname=CentOS-7 – Base – centos.com\nbaseurl=http://mirror.centos.org/centos/7/os/\$basearch/\ngpgcheck=1\ngpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-7" > /etc/yum.repos.d/CentOS7-Base-centos.repo \ && yum clean all \ && yum install -y openssh-server openssh-clients 我提出了我的容器在主机networking模式,所以我假设我应该有我的容器中的主机相同的networking堆栈。 因此,如果我正确设置了http_proxy,我应该在容器内部和外部有相同的yum行为。 是否有可能在docker容器中运行yum,该容器的主机位于需要http_proxy访问yum的半独立networking上?

nexus3.5.1 yum代理库不下载所有的数据库

我正在尝试为http://mirror.centos.org/centos/7/os/x86_64/设置一个nexus yum存储库。 使用的nexus实例是官方docker图像 我configuration了一个yum代理,但是每次repodata被下载,它们都是不完整的,特别是primary.xml文件被截断,我找不到原因。 我尝试了不同的镜子,但行为是一样的。 这是yum更新的输出: Parsing primary.xml error: Specification mandate value for attribute e Repofile: [nexusrepo] name=Nexus Repository baseurl=http://172.17.0.1:8081/repository/yum-proxy/ enabled=1 gpgcheck=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 priority=1 如果我运行nexus从主机二进制的工作,有人可以帮我理解为什么? 谢谢

需要安装Perl和Linux

我知道如何使用Dockerfile来获得我需要的Perl: FROM perl:latest RUN curl -L http://cpanmin.us | perl – App::cpanminus RUN cpanm JSON RUN cpanm Data::Dump RUN cpanm -f XML::SAX RUN cpanm XML::SAX::Expat RUN cpanm XML::Simple 但我也想安装git和make,因为我想克隆我的perl代码,然后cd进入一个目录并使用make运行它。 但增加 RUN yum install git 到了上面,产生了这个错误: /bin/sh: 1: yum: not found 有人可以提出一个办法吗? 我尝试了从Linux开始,并做了一个 RUN yum install perl 但是我没有得到像官方那样顺利运行的Perl。 特别是,当我尝试添加我需要的模块时会窒息。 谢谢。

在Dockerfile中通过yum检查更新的包

在我的Dockerfile中,我可能有一个看起来像这样的步骤来安装一些软件包。 Run yum install pkg1 pkg2 -y &&\ yum -y clean all 问题是,当我不止一次地构build容器的时候,Docker看到这个命令没有改变,也没有运行它。 而是select使用以前caching的图层。 但是,pkg1或pkg2可能已经在yum版本库中进行了更新,需要更新,并且由于它使用了caching的docker图层,所以容器不会收到更新的软件包。 我可以使用–no-cache选项来构build,但是这会使所有的caching层失效,因为通常我的yum install命令已经接近Dockerfiles的末尾,这会大大降低容器的构build速度。 处理这个问题的最佳策略是什么? 是否有任何解决scheme,只有无效的dockercaching,如果有一个不同版本的包在caching与回购?

Docker生成错误没有启用回购

在Centos7.1 Docker主机上:我正在用Dockerfilebuild立一个docker镜像的命令 RUN yum -y install deltarpm yum-utils –disablerepo=*-eus-* –disablerepo=*-htb-* –disablerepo=*-ha-* –disablerepo=*-rt-* –disablerepo=*-lb-* –disablerepo=*-rs-* –disablerepo=*-sap-* 在docker build命令运行期间: docker build -t <image> ,我得到错误: This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. There are no enabled repos. Run "yum repolist all" to see the repos you have. You can […]

在CentOS上运行的Docker容器内不能使用yum

我不能在我的Docker容器内运行任何yum命令而不会收到以下错误: ovl: Error while doing RPMdb copy-up: [Errno 13] Permission denied: '/var/lib/rpm/Group' You need to be root to perform this command. 我很困惑,因为我非常确定docker集装箱运行默认的用户根。 不过,如果我尝试把sudo放在yum install -y <package>或yum update -y命令前,我会得到: /bin/sh: sudo: command not found 我正在使用下面的基础镜像,所以我可以轻松地在Docker中运行Java Wildfly应用程序: https ://hub.docker.com/r/jboss/wildfly/ 底层的发行版是CentOS Linux release 7.2.1511 (Core)