校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > 解決docker CMD/ENTRYPOINT執行sh腳本報: not found/run.sh:

解決docker CMD/ENTRYPOINT執行sh腳本報: not found/run.sh:

熱門標簽:電銷智能機器人試用 撫州市城區地圖標注 激光標記地圖標注 企業辦理400電話收費標準 智能電銷機器人真的有用么 百度地圖底圖標注 中國地圖標注上各個省 高德地圖標注足跡怎么打標 新鄉牧野400電話申請

Dockerfile配置沒有問題,為什么執行ENTRYPOINT命令時一直錯誤?

容器一啟動就退出了。

查了不少資料,想了好久才發現原因。

run.sh是被COPY指令復制到容器中的,而本機是windows,默認的換行符是\n,故而復制過去無法被執行。

解決辦法很簡單,切換文件格式為LF即可。

補充知識:docker中啟動容器時CMD調用的sh腳本中if命令報未預期的符號 if[[的解決辦法

最近通過Dockerfile編寫鏡像,CMD中調用的是sh腳本(start.sh)進行啟動容器,通過docker run啟動時,啟動不成功,進行docker logs 容器ID,發現報錯為:未預期的符號 if [[

我直接在外部linux系統調用執行start.sh是成功的,通過docker exec 進入容器,在容中調用start.sh也未報錯,命令中需要啟動的程序都成功啟動。

腳本直接執行沒問題,通過docker run卻報錯,百思不得其解。

start.sh中報錯代碼段如下

if [[ -e /home/dc/testnn-aaa.zip ]];then
 rm -rf /home/testnn-aaa
 unzip -q -o -d /home testnn-aaa.zip
 echo "unzip zip finished" 
else 
 echo "dc zip not exist"
fi

經過查閱比較,因為我的start.sh在報錯語句之前也有if語句,但是沒報錯,發現兩處區別為第一處if使用的是單[],將代碼改為[],則成功,修改如下:

if [ -e /home/dc/testnn-aaa.zip ];then

以上這篇解決docker CMD/ENTRYPOINT執行sh腳本報: not found/run.sh:就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

標簽:延安 南通 西安 邯鄲 海西 臨汾 忻州 辛集

巨人網絡通訊聲明:本文標題《解決docker CMD/ENTRYPOINT執行sh腳本報: not found/run.sh:》,本文關鍵詞  解決,docker,CMD,ENTRYPOINT,執行,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《解決docker CMD/ENTRYPOINT執行sh腳本報: not found/run.sh:》相關的同類信息!
  • 本頁收集關于解決docker CMD/ENTRYPOINT執行sh腳本報: not found/run.sh:的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 宁城县| 宁都县| 湟中县| 克山县| 阿克苏市| 顺义区| 五指山市| 桃江县| 哈尔滨市| 潞城市| 武清区| 武穴市| 丹凤县| 新和县| 延长县| 朔州市| 京山县| 个旧市| 辽源市| 白沙| 牡丹江市| 章丘市| 揭东县| 贺兰县| 鄂温| 南召县| 明光市| 岳池县| 加查县| 南溪县| 如皋市| 凤庆县| 万盛区| 兴化市| 禄劝| 察哈| 阿瓦提县| 额敏县| 汝南县| 雷山县| 尚志市|