随笔 - 714  文章 - 0  评论 - 12812  阅读 - 301万 

这几天计划打算上传微服务网关和微服务注册中心的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

 

posted on   路过秋天  阅读(2966)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)
历史上的今天:
2010-01-22 网站安装打包 新建网站[四][文件解压] 上
路过秋天
点击右上角即可分享
微信分享提示