本文介绍使用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镜像。
文档内容是否对您有帮助?