2017-05-25 192 views
0

我是新來的碼頭,我只是想在容器中複製shellscript,我想執行shellscript。無法運行shell腳本使用dockerfile

Dockerfile:

FROM amazonlinux 

WORKDIR /opt 

ADD ./test_Install.sh /opt/test_Install.sh 

RUN chmod 777 /opt/test_Install.sh 

WORKDIR/

RUN ./test_Install.sh 

製作圖片:docker build -t "testinstallscript:dockerfile" .

當我使用命令"docker build -t "testinstallscript:dockerfile" ."我收到以下錯誤:

standard_init_linux.go:178: exec user process caused "no such file or directory"

The command '/opt/test_Install.sh' returned a non-zero code: 1

誰能告訴我什麼,我做錯了什麼?

+0

這不是什麼'RUN'是,將其更改爲'ENTRYPOINT'或'CMD'。 – jiveturkey

+0

應該是'。/ opt/test_Install.sh'好像是 – user2915097

+0

或者更好的將'WORKDIR'改爲'/ opt',但是'RUN'仍然需要改變。 – jiveturkey

回答

2

您需要更改RUN ./test_Install.sh才能使用ENTRYPOINTCMDRUN在新圖層中執行命令以創建新圖像,以便在設置容器時使用它。

-1

以下命令工作: 運行bash的/opt/test_install.sh