在ECS Fargate部署微服务遇容器启动错误,寻求技术支持
ECS Fargate部署微服务遇CannotStartContainerError的解决办法
报错信息:
Stopped | CannotStartContainerError: ResourceInitializationError: unable to create new container: mount callback failed on /tmp/containerd-mount2307274170: open /tmp/containerd-mount2307274170/etc/passwd: no such file or directory
检查容器镜像完整性
该错误大概率是镜像文件系统损坏导致,比如基础镜像缺失/etc/passwd核心文件。重新构建镜像,优先使用官方未篡改的基础镜像(如alpine、ubuntu),确保构建过程中未误删除系统关键文件。核对任务定义的挂载配置
如果任务定义中配置了自定义挂载(绑定挂载或卷),检查是否存在挂载路径覆盖容器内/etc目录或/etc/passwd的情况。若有,调整挂载路径,避免覆盖系统核心目录。升级Fargate平台版本
旧版Fargate平台可能存在容器运行时bug,尝试将任务定义的平台版本升级至最新稳定版(如1.4.0及以上),更新后重新部署任务。排查Dockerfile构建命令
检查Dockerfile中是否包含危险操作,比如RUN rm -rf /etc这类会删除系统核心目录的命令,修正后重新构建并推送镜像到ECR。
内容的提问来源于stack exchange,提问作者krishna sai
相关产品推荐
相关产品推荐

