这几天计划打算上传微服务网关和微服务注册中心的docker镜像:Taurus.Gateway、Taurus.RegistryCenter
却发现 dockerhub在国内无法使用了。
目前使用阿里云个人免费版来上传镜像。
用.net core 8 打包本地测试正常后,上传阿里云,再从虚拟机测试下载运行时出现以下问题:
Failed to create CoreCLR, HRESULT: 0x80070008
经查,该问题有以下几种可能:
1、硬盘空间不足。 2、/tmp 文件不存在 或没有 /tmp 的写入权限。 3、.net core 8 使用了 docker 默认白名单之外的命令导致的。
经查是第3种情况引发的:
通过在 docker run 的时候添加参数,取消docker的seccomp调用白名单安全检查。
--security-opt seccomp=unconfined
或者在 docker-compose.yml 上添加参数:
security_opt: - seccomp=unconfined
添加以上参数后一切正常了。
补充:在 .NET 8 之前,配置为以只读方式运行的容器可能会失败并显示“Failed to create CoreCLR, HRESULT: 0x8007000E
”。
若要解决此问题,请将 DOTNET_EnableDiagnostics
环境变量指定为 0
(就在 ENTRYPOINT
步骤之前):
ENV DOTNET_EnableDiagnostics=0
标签:core,run,0x80070008,HRESULT,CoreCLR,Failed,docker,net From: https://www.cnblogs.com/cyq1162/p/17981333