【问题标题】:ASP.NET Core 2.0 docker container crashes on Linux with exit code 132 (SIGILL)ASP.NET Core 2.0 docker 容器在 Linux 上崩溃,退出代码为 132 (SIGILL)
【发布时间】:2018-02-15 13:29:12
【问题描述】:

我有一个面向 Linux 的 ASP.NET Core 2.0 Docker 映像。这在我的 Windows 开发机器上运行良好。当我在 Linux 上将此 iamge 作为 docker 容器运行时,它会在向正在运行的容器发出请求时崩溃。不添加日志条目,也不产生异常。使用 Docker CLI 我可以看到容器以退出代码 132 停止,这似乎是“SIGILL”、“非法指令”。

在下面的测试文件中,添加时出现错误

asp-for="LoginCode"

在输入元素上。如果我不考虑这个,一切都会运行良好。

Test.cshtml:

@model LoginViewModel

Test page running.
@{
    ViewData["Title"] = "Login";
}
<h1>@ViewData["Message"]</h1>

@try
{
    using (Html.BeginForm())
    {
        <input type="text" class="form-control" placeholder="Logincode" asp-for="LoginCode" />
    }
}
catch (Exception exc)
{
    exc.ToString();
}

public class LoginViewModel
{
    [Required]
    public string LoginCode { get; set; }
    [Required]
    public string Paswoord { get; set; }
}

public class HomeController : Controller
{
    public IActionResult Test()
    {
        return View("Test");
    }
}

Dockerfile:

FROM microsoft/aspnetcore:2.0 AS base
WORKDIR /app
EXPOSE 80

FROM microsoft/aspnetcore-build:2.0 AS build
WORKDIR /src
COPY *.sln ./
COPY MyProjectName/MyProjectName.csproj MyProjectName/
RUN dotnet restore
COPY . .
WORKDIR /src/MyProjectName
RUN dotnet build -c Release -o /app

FROM build AS publish
RUN dotnet publish -c Release -o /app

FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "MyProjectName.dll"]

这是 Docker、ASP.NET Core 中的错误,还是我的错误?我是否可以通过任何方式解决此问题或找出错误发生的确切位置?我有类似的 ASP.NET Core 应用程序在同一台 Linux 机器上运行而没有问题,它们确实使用 asp-for 标记吗?

【问题讨论】:

    标签: c# asp.net linux docker asp.net-core-2.0


    【解决方案1】:

    您可以添加您的 Dockerfile 以供参考吗?通常,来自的 ASP.NET Core Base 映像是多目标的。根据 docker 版本,它可以为 Windows 或 Linux 拉取特定版本的映像。您需要针对 Linux 的映像才能在 Linux 机器上运行

    【讨论】:

    • 该映像针对 Linux。此外,应用程序运行良好,只要 asp-for="LoginCode" 未添加到标签。怀疑如果图像被错误地定位,应用程序根本不会运行任何 asp.net 核心代码?稍后我将发布 Dockerfile,因为我现在无法访问它,谢谢。
    猜你喜欢
    • 1970-01-01
    • 2019-04-07
    • 2018-02-03
    • 2014-07-29
    • 2021-05-10
    • 2013-10-01
    • 2022-08-20
    • 2018-10-08
    • 2020-09-22
    相关资源
    最近更新 更多