Сбой сборки Docker, команда не найдена
Мой Dockerfile
как следует:
FROM registry.access.redhat.com/rhel6.7
USER root
MAINTAINER zaman L
RUN mkdir /apps
COPY httpd-2.4.34.tar.bz2 /tmp
RUN /usr/bin/tar xjvf /tmp/httpd-2.4.34.tar.bz2 -C /apps
VOLUME /tmp
VOLUME /apps
Но docker build
терпит неудачу с этой ошибкой:
`Step 7 : RUN /usr/bin/tar xjvf /tmp/httpd-2.4.34.tar.bz2 -C /apps
---> Running in 541bdd63aac6
/bin/sh: /usr/bin/tar: No such file or directory
The command '/bin/sh -c /usr/bin/tar xjvf /tmp/httpd-2.4.34.tar.bz2 -C /apps' returned a non-zero code: 127`
Как я могу это исправить?
1 ответ
Это терпит неудачу, потому что это не может найти ваш tar
исполняемый в /usr/bin/tar
,
Пара вещей, которые вы можете сделать:
- замещать
/usr/bin/tar
сtar
, как указано в комментарии. - Бежать
which tar
чтобы увидеть, где вашtar
исполняемые жизни, и заменить/usr/bin/tar
с выводом из этой команды.
Любой из них должен работать - первый более общий (т.е. не сломается, если ваш tar
в дальнейшем исполняемый файл заканчивается где-то другим), но второй не начнет использовать другой исполняемый файл, если tar
найден ранее в вашем PATH
поиск.