2016-11-17 70 views
0

我想建立泊塢窗和安裝NVM得到錯誤/ bin/sh的:1:來源:找不到

一些代碼行運行源時

RUN curl https://raw.githubusercontent.com/creationix/nvm/v0.25.0/install.sh | bash 
    RUN source ~/.profile 

捲曲成功運行,但是,得到如下錯誤

/bin/sh: 1: source: not found 
The command '/bin/sh -c source ~/.profile' returned a non-zero code: 127 
+0

要討厭把它打破給你。但是,找不到源代碼意味着無論它試圖從特定目錄安裝,都無法找到。那麼你確定你遵循了完全遵循的教程,而不是錯過了什麼嗎? – zerohero

+0

是的,請粘貼此代碼從教程..我想安裝nvm所以下面這個鏈接https://www.liquidweb.com/kb/how-to-install-nvm-node-version-manager-for-node-js -on-ubuntu-12-04 -lts/ – Musaddique

+0

你能鏈接到教程的源代碼嗎?找不到的源碼很明顯 – zerohero

回答

0

Docker docs

可以使用SHELL 命令更改shell表單的默認shell。

在外殼形式中,您可以使用\(反斜槓)繼續單行RUN 指令到下一行。例如,考慮這兩行: RUN/bin/bash -c'source $ HOME/.bashrc; \ echo $ HOME'它們合起來就等於這一行:RUN/bin/bash -c'source $ HOME/.bashrc; echo $ HOME'

注意:要使用不同於'/ bin/sh'的shell,請使用傳遞所需shell的exec 表單。例如,運行[ 「/斌/慶典」, 「-c」, 「回聲你好」]

你可以嘗試:

RUN curl https://raw.githubusercontent.com/creationix/nvm/v0.25.0/install.sh | bash 
# RUN source ~/.profile 
RUN ["/bin/bash", "-c", "source ~/.profile"] 
+1

這裏我得到同樣的問題。 – Musaddique

+0

在線'''RUN [「/ bin/bash」,「-c」,「source〜/ .profile」]發生了什麼?''? – Tuan

+0

命令'/ bin/bash -c source〜/ .profile'返回一個非零代碼:1 – Musaddique

0

我解決了這個答案

代替通過"source ~/.profile"

安裝NVM我將其更改爲

RUN curl https://raw.githubusercontent.com/creationix/nvm/v0.25.0/install.sh | bash 

ENV NVM_DIR=/root/.nvm 
ENV NODE_VERSION=4.5.0 
RUN . $HOME/.nvm/nvm.sh && nvm install $NODE_VERSION && nvm alias default $NODE_VERSION && nvm use default 
相關問題