8

我正在尝试在 rhel6 中下载文件并使用 tar 解压缩它。我在 docker 上运行它。我收到一个奇怪的错误,说 /bin/sh: tar: command not found。我是 linux 和 docker 的新手。有人可以帮忙吗。

#HELLO
FROM rhel6
MAINTAINER xxxxx

#RUN yum -y install wget

RUN yum update -y && yum clean all

#RUN yum -y install tar

RUN curl -OL  http://username:pwd@downloads.datastax.com/enterprise/dse-4.0.3-bin.tar.gz

RUN curl -OL  http://username:pwd@downloads.datastax.com/enterprise/opscenter-4.0.3.tar.gz

RUN echo $PATH

RUN tar -xzvf opscenter-4.0.3.tar.gz

RUN rm *.tar.gz
4

3 回答 3

7

很奇怪……这并没有发生……然后突然开始发生。我不知道为什么,但我通过安装 tar.x86_64 解决了这个问题:

FROM centos:6
RUN     yum -y update && \
    yum -y install wget && \
    yum install -y tar.x86_64 && \
    yum clean all
于 2015-12-28T16:51:25.497 回答
0

在经历了很多痛苦之后,我才知道当你在一个容器内时,它没有注册到 RHN 或卫星。我怀疑 REDHAT 是否会在不久的将来提供此功能。

我所做的是从 CENTOS 获取所需的 rpm 并将它们安装在 RHEL6 之上。

RUN curl -OL ftp://fr2.rpmfind.net/linux/centos/6.6/os/x86_64/Packages/unzip-6.0-1.el6.x86_64.rpm
RUN yum install -y unzip-6.0-1.el6.x86_64.rpm
RUN rm unzip-6.0-1.el6.x86_64.rpm

我认为这是目前最好的策略。获取非常基本的 RHEL6 映像并从 CENTOS 安装所需的软件包。您应该将此自定义 RHEL6 映像用于您的开发目的。

https://access.redhat.com/articles/881893

于 2015-02-05T19:34:13.937 回答
0

我试过一个类似的,richxsl/rhel6.5 bash

$ docker run -it richxsl/rhel6.5 bash
[root@5f3b0b7539a3 /]# tar
bash: tar: command not found
[root@5f3b0b7539a3 /]# yum install tar
Loaded plugins: product-id, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Setting up Install Process
No package tar available.
Error: Nothing to do
[root@5f3b0b7539a3 /]#

您可能需要注册红帽订阅管理吗?

于 2014-12-23T07:20:14.307 回答