Windows10企业版用Docker创建Sitecore10镜像报容器不健康错误
Sitecore 10 Docker部署容器不健康问题解决方案
你已执行的基础容器重置、端口释放操作未解决问题的情况下,可按以下层级排查处理:
第一步:定位异常容器根因
首先确认报错中两个不健康容器的具体服务与运行日志:
- 执行命令确认容器对应服务:
docker ps -a --filter "id=992574e988e3" --filter "id=933b548fc2f9"
常规场景下ID为992574e988e3的容器为xconnect服务,ID为933b548fc2f9的容器为traefik反向代理服务 - 抓取容器运行日志定位错误:
docker logs 992574e988e3 docker logs 933b548fc2f9
重点排查证书信任、依赖服务不可用、端口占用、权限不足、启动超时类报错
第二步:对应场景解决方法
证书错误类场景
Windows 10企业版的系统证书信任机制会拦截Sitecore自动生成的自签名证书,解决步骤:
- 停止所有运行中的Sitecore容器,执行
docker volume prune -f清除残留的证书存储卷 - 手动删除本地
C:\etc\traefik、C:\sitecore\certificates目录下的所有旧证书文件 - 重新执行Sitecore部署包中的证书初始化脚本,再启动容器
xconnect服务异常场景
xconnect启动失败会导致所有依赖它的worker容器报错不健康:
- 检查MSSQL服务运行状态,执行以下命令确认所有Sitecore数据库已正常挂载:
docker exec sitecore-xp0_mssql_1 sqlcmd -U sa -P <你设置的SA账户密码> -Q "SELECT name FROM sys.databases" - 访问本地Solr控制台
https://localhost:8984/solr,确认所有xconnect相关索引已创建完成且状态正常
traefik端口占用场景
除IIS外其他服务也可能占用80、443端口:
执行netstat -ano | findstr ":443" 查看443端口占用进程ID,停止对应进程后再启动容器
资源不足超时场景
Sitecore 10 XP0拓扑最低要求16G系统运行内存,需给Docker Desktop分配至少24G运行内存、4核CPU,调整资源配置后重启Docker再启动容器
第三步:全量重置兜底操作
以上排查后仍启动失败,执行全量清理命令后重新部署:
docker-compose down --volumes --remove-orphans docker system prune -af iisreset /stop net stop w3svc docker-compose up -d
内容的提问来源于stack exchange,提问作者swabha
相关产品推荐
相关产品推荐

