Docker 鏡像構建報 exec xxx.sh: no such file or directory

問題記錄

場景:

? ? ? ? 處于對nacos docker 部署最新版本的探究,但是nacos/nacos-server鏡像拉取不到最新版本,官網也是給出自己構建鏡像的方案。

? ? ? ? 具體步驟很簡單,先clone項目,然后簽出你要的nacos版本,通過docker-compose 部署。

# 克隆項目
git clone https://github.com/nacos-group/nacos-docker.git
cd nacos-docker# 單機模式 mysql 8
docker-compose -f example/standalone-mysql-8.yaml up# 單機模式 Derby
docker-compose -f example/standalone-derby.yaml up

但是,中間也出現了幾個問題,具體如下:

  • 拉取nacos最新版的鏡像拉取不到

之前用了好多個國內鏡像加速,正常pull nacos/nacos-server:latest 下來的是老版本,指定版本號的話,加了好幾個國內源才pull成功,最新版本卻拉取不到,猜測還沒推上去。但是不知道哪個倉庫是不是已經有了比較新的nacos版本,這個就不可控。所以,干脆自己構建一個鏡像吧~~

  • 鏡像構建報 exec bin/docker-startup.sh: no such file or directory

? ? ? ?這個問題和開發環境有關系,windows 環境可能會遇到,其它沒測試過,看上去錯誤信息是找不到腳本文件,其實是存在的。這個問題本質上是是”找不到腳本的解釋器“,而不是找不到腳本本身。

????????因為系統是windows ,代碼文件從github拉下來,腳本換行符會自動變成Windows的換行符CRLF,然后docker builder的時候,直接把文件docker-startup.sh 復制到容器內部就出問題了。

#!/bin/bash[CRLF]

容器內部是Linux系統,它的換行符是LF,所以無法識別CR,當執行腳本的時候,第一行的解釋器名稱就變成 #!/bin/bashCR了,肯定找不到,就報no such file or directory。

總結:

? ? ? ? 總的來說,本質問題還是換行符的問題,Linux 執行了帶有Windows換行符的腳本。以后在Windows是上開發的腳本,或者中轉的腳本,最好保證換行符還是Unix(LF),這個在很多文本編輯器里是可以指定的,Idea同樣可以轉換。

代碼庫:

GitHub - nacos-group/nacos-docker: This project contains a Docker image meant to facilitate the deployment of Nacos .This project contains a Docker image meant to facilitate the deployment of Nacos . - nacos-group/nacos-dockericon-default.png?t=N7T8https://github.com/nacos-group/nacos-docker.git

來源:

Nacos Docker 快速開始 | Nacos 官網容器中sh腳本明明存在,為何會報"no such file or directory"的錯誤? - cs_liwei - 博客園 (cnblogs.com)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/44183.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/44183.shtml
英文地址,請注明出處:http://en.pswp.cn/web/44183.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

算法力扣刷題記錄 四十二【101. 對稱二叉樹、100.相同的樹、572.另一個樹的子樹】

前言 二叉樹篇,開始對二叉樹操作練習。 記錄 四十二【101. 對稱二叉樹】。 繼續。 一、題目閱讀 給你一個二叉樹的根節點 root , 檢查它是否軸對稱。 示例 1: 輸入:root [1,2,2,3,4,4,3] 輸出:true示例 2&#x…

S5730交換機上配置訪問控制列表(ACL)、OSPF路由和PIM-SM組播

配置訪問控制列表(ACL) 假設我們創建一個簡單的ACL,允許或拒絕特定流量通過。 進入系統視圖 sys 創建一個標準ACL,允許192.168.1.0/24網段的流量通過 acl number 2001 rule 5 permit source 192.168.1.0 0.0.0.255 其他流量默…

Pytest單元測試系列[v1.0.0][Pytest基礎]

Pytest安裝與配置 和Unittest一樣,Pytest是另一個Python語言的單元測試框架,與Unittest相比它的測試用例更加容易編寫、運行方式更加靈活、報錯信息更加清晰、斷言寫法更簡潔并且它可以運行有unittest和nose編寫的測試用例。 Pytest 安裝 啟動命令行&…

【Pytorch】Conda環境下載慢換源/刪源/恢復默認源

文章目錄 背景臨時換源永久換源打開conda配置condarc換源執行配置 命令行修改源添加源查看源 刪源恢復默認源使用示范 背景 隨著實驗增多,需要分割創建環境的情況時有出現,在此情況下使用conda create --name xx python3.10 pytorch torchvision pytorc…

uni-app三部曲之二: 封裝http請求

1.引言 前面一篇文章寫了使用Pinia進行全局狀態管理。 這篇文章主要介紹一下封裝http請求,發送數據請求到服務端進行數據的獲取。 感謝: 1.yudao-mall-uniapp: 芋道商城,基于 Vue Uniapp 實現,支持分銷、拼團、砍價、秒殺、優…

電腦自動重啟是什么原因呢?99%人都不知道的解決辦法,直接打破循環

當你的電腦突然毫無預警地自動重啟,不僅打斷了工作流程,還可能導致未保存的數據丟失,這無疑是一件令人沮喪的事情。那么,電腦自動重啟是什么原因呢?有什么方法可以解決呢?別擔心,在大多數情況下…

Android Retrofit post請求,@Body傳遞的參數轉義問題

文章目錄 問題解決原因解決方案一:自己拼接json字符串,Body使用RequestBody類型,比如解決方案二:修改Retrofit的Gson 問題 因為傳遞的參數字符串中有等號 ,結果傳遞的時候,打印出來 原始字符串&#xff…

【AIGC】GPT-4深度解析:自然語言處理的新紀元

目錄 第一部分:GPT-4技術概覽 1.1 GPT-4模型架構 多模態輸入處理 專家混合(MoE)技術詳解 參數規模和模型復雜性 1.2 GPT-4的關鍵技術創新 上下文窗口的擴展 模型性能預測技術 1.3 GPT-4與其他模型的比較 性能對比 架構差異 第二部…

docker-2

27.構建python應用鏡像-dockerfile實踐項目 1.基于官方的鏡像,構建python代碼運行環境 dockerfile 2.運行鏡像,開啟一個讀寫的容器空間(定制操作,將代碼丟進去,運行調試) 3.提交這個變化的容器層數據&#…

cal命令

1、命令詳解: cal(全稱:Calendar)該命令用來顯示當前日歷或者指定日期的公歷。 2、官方參數: -1, --one 僅顯示當前月份(默認)-3, --three 顯示上個月、當前月和下個月-s, --sunday…

谷粒商城P85發布商品時規格參數不顯示問題

P85講,發布商品,點擊下一步之后,發現規格參數不顯示 打開控制臺發現報錯forEach...錯誤 查了問題原因,發現返回的分組中個別組的關聯屬性(attrs)可能為null 所以這個時候,需要確保后端返回的attrs不能為null 方式1…

數據結構之順序存儲線性表實現詳解與示例(C,C#,C++)

文章目錄 一、順序存儲線性表的基本概念二、順序存儲線性表的實現1、數據結構定義2、初始化3、添加元素4、訪問元素5、修改元素6、刪除元素7、銷毀 三、示例C語言示例C#語言示例C語言示例 順序存儲線性表是一種基本的數據結構,它將線性表的元素按照一定的順序存放在…

Mysql中存儲過程、存儲函數、自定義函數、變量、流程控制語句、光標/游標、定義條件和處理程序的使用示例

場景 存儲過程 存儲過程是一組為了完成特定功能的SQL語句集合。使用存儲過程的目的是將常用或復雜的工作預先用SQL語句寫好并用一個指定名稱存儲起來, 這個過程經編譯和優化后存儲在數據庫服務器中,因此稱為存儲過程。 當以后需要數據庫提供與己定義…

分享WPF的UI開源庫

文章目錄 前言一、HandyControl二、AduSkin三、Adonis UI四、Panuon.WPF.UI五、LayUI-WPF六、MahApps.Metro七、MaterialDesignInXamlToolkit八、FluentWPF九、DMSkin總結 前言 分享WPF的UI開源庫。 一、HandyControl HandyControl是一套WPF控件庫,它幾乎重寫了所…

uni-app 掃描二維碼獲取信息功能

首先是掃描二維碼的功能,可以參考這篇博文 uni-app-H5頁面調用設備攝像頭掃描二維碼_uni-app app端調用攝像頭顯示至指定元素上顯示-CSDN博客 然后現在是可以掃描二維碼的狀態,掃描之后,可以看到首先是出發上一個頁面的事件,然后…

每天一個數據分析題(四百二十五)- 單因素方差分析

關于下表&#xff0c;錯誤說法是&#xff08; &#xff09; A. 這是單因素方差分析的輸出結果 B. 表中 F< F crit, 與 P-value 大于顯著性水平是等價的 C. 表內組間均方差沒有顯著大于組內均方差 D. 由于組內SS數值顯著大于組間SS&#xff0c;因此可以推斷不同分類對于…

使用Python繪制面積圖

使用Python繪制面積圖 面積圖效果代碼 面積圖 面積圖展示數據隨時間的累積變化&#xff0c;適合表現趨勢和總量。通過填充圖形下方的區域&#xff0c;可以直觀地顯示各時間點的數值及其變化。 效果 [外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-…

機器學習——決策樹(筆記)

目錄 一、認識決策樹 1. 介紹 2. 決策樹生成過程 二、sklearn中的決策樹 1. tree.DecisionTreeClassifier&#xff08;分類樹&#xff09; &#xff08;1&#xff09;模型基本參數 &#xff08;2&#xff09;模型屬性 &#xff08;3&#xff09;接口 2. tree.Decision…

最新開源免費數字人工具

使用步驟更是簡單到不行&#xff1a; 1. 輸入圖片&#xff1a;選擇你想要生成動態視頻的肖像圖片。 2. 輸入音頻&#xff1a;提供與圖片匹配的音頻文件&#xff0c;EchoMimic會根據音頻內容驅動肖像的動態效果。 3. 設置參數&#xff1a;一般保持默認設置即可&#xff0c;當然&…

排序題目:最小時間差

文章目錄 題目標題和出處難度題目描述要求示例數據范圍 解法思路和算法代碼復雜度分析 題目 標題和出處 標題&#xff1a;最小時間差 出處&#xff1a;539. 最小時間差 難度 3 級 題目描述 要求 給定一個 24 \texttt{24} 24 小時制的時間列表&#xff0c;時間以 &quo…