2015-06-09 4 views
8

Я пытаюсь установить oh-my-zsh как часть сборки Docker (используя файл Docker). Вот dockerfile линия вопрос:oh-my-zsh установка возвращает ненулевой код

RUN wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | zsh

и ошибка, я получаю:

The command [/bin/sh -c wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | zsh] returned a non-zero code: 1

Full error gist here

Для отладки я выполнить команду вручную, и это работает , Неужели кому-то удалась установить oh-my-zsh как часть сборки докеров? любая идея, почему она ведет себя по-другому, если она работает так?

+0

посмотреть на 32 контейнерах для Zsh на HTTPS Hub: //registry.hub.docker. com/search? q = zsh & searchfield = – user2915097

ответ

10

Сбой сборки, потому что install.sh возвращает ненулевой код, когда вы запускаете скрипт вручную, вы игнорируете код возврата, но не выполняете сборку docker. Обычно ненулевой код возврата указует на ошибку, но если в этом случае все ок вы можете игнорировать эту ошибку:

RUN wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | zsh || true 
+0

правый. кажется, что все установлено просто отлично, но возвращается код ошибки 1. поэтому я применяю этот подход, основанный на силе. спасибо. – Tal