本文介紹使用SAE時,如何處理Webshell無法使用的情況。
問題現象
- Webshell無法使用
- Webshell登錄錯誤
- Webshell登錄應用失敗
可能原因
- 應用健康檢查一直失敗
- 鏡像架構問題
- 鏡像沒有安裝sh工具
解決方案
針對不同的原因,解決方案不同,具體步驟如下所示。
- 應用健康檢查一直失敗
健康檢查不通過,將導致WebShell剛建立連接,就因為實例重啟而斷開連接。建議您先解決健康檢查的問題,再重新登錄Webshell。更多信息,請參見為什么設置健康檢查后健康檢查失敗?。
- 鏡像架構問題
如果您采用鏡像部署應用,請檢查您的鏡像架構或者您的基礎鏡像架構是否為AMD64架構。因為SAE不支持部署AMD64架構的鏡像,所以導致Webshell無法使用。您需要先構建正確架構的鏡像,再重新登錄Webshell。更多信息,請參見為什么我用ARM架構(使用M系列芯片的Mac電腦)的機器打出的鏡像在SAE運行失敗?。
- 鏡像沒有安裝sh工具
檢查您的鏡像是否有sh工具。Webshell運行依賴/bin/bash,但您的鏡像中沒有該執行文件,將導致Webshell無法使用。解決方法如下。
- 方法一:在Dockerfile文件中,指定帶有/bin/bash的基礎鏡像。
- 方法二:在Dockerfile文件中,建立軟連接/bin/bash -> /bin/sh。
Spring Cloud、Dubbo和HSF應用的Dockerfile示例,請參見制作Java鏡像。
文檔內容是否對您有幫助?