【问题标题】:Running ASP.NET Core app from Amazon Linux 2 on Docker - Globalization在 Docker 上从 Amazon Linux 2 运行 ASP.NET Core 应用程序 - 全球化
【发布时间】:2018-08-05 15:46:41
【问题描述】:

我的 ASP.NET Core 应用程序在 microsoft/aspnetcore:2.0-jessie 上运行良好(或多或少)。现在我想尝试让它部署到amazonlinux:2

到目前为止,最大的障碍是libicu。我尝试将 Globalization 设置为 Invariant,但这会导致奇怪的失败,例如 mySQL 数据库调用。

这是我的 Dockerfile 中的相关步骤:

RUN curl -L --http1.1 http://download.icu-project.org/files/icu4c/57.1/icu4c-57_1-RHEL6-x64.tgz --output icu.tgz \
    && tar -xf icu.tgz -C / \
    && export LD_LIBRARY_PATH=/usr/local/lib \
    && rm icu.tgz

(我昨天尝试解决这个问题时,SourceForge 宕机了,这并没有改善问题。)

无论如何,我仍然从 .NET Core 得到厄运的消息:

FailFast:找不到系统上安装的有效 ICU 软件包。如果您想在不支持全球化的情况下运行,请将配置标志 System.Globalization.Invariant 设置为 true。

有什么建议吗?

【问题讨论】:

    标签: docker .net-core rhel icu amazon-linux


    【解决方案1】:

    嗯,我昨天重温了一遍。不知道是不是因为Amazon Linux镜像的基础.tar已经更新了,还是因为我上次做错了,但是我用yum安装了以下包,一切都很好:

    • libunwind
    • 利比库
    • dotnet-hosting-2.0.5

    请注意,对于 dotnet 包,我首先需要为 yum 设置 Microsoft 的包存储库,即

    rpm --import https://packages.microsoft.com/keys/microsoft.asc
    

    并将以下文件复制到 /etc/yum.repos.d/dotnetdev.repo :

    [packages-microsoft-com-prod] 
    name=packages-microsoft-com-prod 
    baseurl=https://packages.microsoft.com/yumrepos/microsoft-rhel7.3-prod 
    enabled=1 
    gpgcheck=1 
    gpgkey=https://packages.microsoft.com/keys/microsoft.asc
    

    (见Microsoft's instructions for CentOS and other Linux distros

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-12-08
      • 2019-02-10
      • 2018-12-23
      • 2017-05-30
      • 2020-08-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多