Asp.Net 5 个图像在工作 3-4 秒后在 Linux VM 上获得 killed/stopped
Asp.Net 5 image gets killed/stopped on Linux VM after 3-4 seconds of working
我已在 Linux VM 上成功安装 docker 并从 git 开始示例。
现在我想 运行 我的项目。所以我使用命令创建了图像(已成功构建):
docker build -t versaweb .
当我用命令启动它时:
docker run -t -d -p 80:5003 versaweb
并且当使用 docker ps 进行检查时它是 运行ning 但是当 3 或 4 秒的正常运行时间过去时我再次检查 docker ps 就没了。当我 运行 在 windows 机器上进行项目时,它运行完美 - 所以我相信我在 project.json 或 docker.
中有问题
这是我的 project.json:
{
"version": "1.0.0-*",
"bundleExclude": "*.cmd",
"webroot": "wwwroot",
"dependencies": {
"EntityFramework.SqlServer": "7.0.0-beta3",
"EntityFramework.InMemory": "7.0.0-beta3", // For Mono.
"Kestrel": "1.0.0-beta3",
"Microsoft.AspNet.Diagnostics": "1.0.0-beta3",
"Microsoft.AspNet.Diagnostics.Entity": "7.0.0-beta3",
"Microsoft.AspNet.Identity.EntityFramework": "3.0.0-beta3",
"Microsoft.AspNet.Mvc": "6.0.0-beta3",
"Microsoft.AspNet.Security.OpenIdConnect": "1.0.0-beta3",
"Microsoft.AspNet.Server.IIS": "1.0.0-beta3",
"Microsoft.AspNet.Server.WebListener": "1.0.0-beta3",
"Microsoft.AspNet.SignalR.Server": "3.0.0-beta3",
"Microsoft.AspNet.StaticFiles": "1.0.0-beta3",
"Microsoft.AspNet.Session": "1.0.0-beta3",
"Microsoft.Framework.Cache.Memory": "1.0.0-beta3",
"Microsoft.Framework.CodeGenerators.Mvc": "1.0.0-beta3",
"Microsoft.Framework.ConfigurationModel.Json": "1.0.0-beta3",
"Microsoft.Framework.Logging.Console": "1.0.0-beta3"
},
"commands": {
"web": "Microsoft.AspNet.Hosting --server Microsoft.AspNet.Server.WebListener --server.urls http://localhost:5001",
"kestrel": "Microsoft.AspNet.Hosting --server Kestrel --server.urls http://localhost:5003"
},
"frameworks": {
"aspnet50": {
"dependencies": {
"Utilities": "1.0.0-*"
}
}
}
}
这是我的 Dockerfile :
FROM microsoft/aspnet
COPY . /app
WORKDIR /app
RUN ["kpm", "restore"]
EXPOSE 5003
ENTRYPOINT ["k", "kestrel"]
如果有这方面经验的人可以帮助我,我将不胜感激:)
好的,所以它没有停止或终止它只是没有启动。在我使用 docker 运行 没有标志 -d
之后
docker run -t -p (...)
我可以看到日志和错误所在。原来我的 ASP.Net5 Class 库是问题所在 - 在我将它从项目中删除后,我可以启动图像。明天早上我仍会对其进行映射,因此我将使用有关其工作原理的信息来编辑答案。
PS:我也遇到了 docker 的问题。使用最新版本。低于 1.7 存在内存泄漏问题。
我已在 Linux VM 上成功安装 docker 并从 git 开始示例。
现在我想 运行 我的项目。所以我使用命令创建了图像(已成功构建):
docker build -t versaweb .
当我用命令启动它时:
docker run -t -d -p 80:5003 versaweb
并且当使用 docker ps 进行检查时它是 运行ning 但是当 3 或 4 秒的正常运行时间过去时我再次检查 docker ps 就没了。当我 运行 在 windows 机器上进行项目时,它运行完美 - 所以我相信我在 project.json 或 docker.
中有问题这是我的 project.json:
{
"version": "1.0.0-*",
"bundleExclude": "*.cmd",
"webroot": "wwwroot",
"dependencies": {
"EntityFramework.SqlServer": "7.0.0-beta3",
"EntityFramework.InMemory": "7.0.0-beta3", // For Mono.
"Kestrel": "1.0.0-beta3",
"Microsoft.AspNet.Diagnostics": "1.0.0-beta3",
"Microsoft.AspNet.Diagnostics.Entity": "7.0.0-beta3",
"Microsoft.AspNet.Identity.EntityFramework": "3.0.0-beta3",
"Microsoft.AspNet.Mvc": "6.0.0-beta3",
"Microsoft.AspNet.Security.OpenIdConnect": "1.0.0-beta3",
"Microsoft.AspNet.Server.IIS": "1.0.0-beta3",
"Microsoft.AspNet.Server.WebListener": "1.0.0-beta3",
"Microsoft.AspNet.SignalR.Server": "3.0.0-beta3",
"Microsoft.AspNet.StaticFiles": "1.0.0-beta3",
"Microsoft.AspNet.Session": "1.0.0-beta3",
"Microsoft.Framework.Cache.Memory": "1.0.0-beta3",
"Microsoft.Framework.CodeGenerators.Mvc": "1.0.0-beta3",
"Microsoft.Framework.ConfigurationModel.Json": "1.0.0-beta3",
"Microsoft.Framework.Logging.Console": "1.0.0-beta3"
},
"commands": {
"web": "Microsoft.AspNet.Hosting --server Microsoft.AspNet.Server.WebListener --server.urls http://localhost:5001",
"kestrel": "Microsoft.AspNet.Hosting --server Kestrel --server.urls http://localhost:5003"
},
"frameworks": {
"aspnet50": {
"dependencies": {
"Utilities": "1.0.0-*"
}
}
}
}
这是我的 Dockerfile :
FROM microsoft/aspnet
COPY . /app
WORKDIR /app
RUN ["kpm", "restore"]
EXPOSE 5003
ENTRYPOINT ["k", "kestrel"]
如果有这方面经验的人可以帮助我,我将不胜感激:)
好的,所以它没有停止或终止它只是没有启动。在我使用 docker 运行 没有标志 -d
之后docker run -t -p (...)
我可以看到日志和错误所在。原来我的 ASP.Net5 Class 库是问题所在 - 在我将它从项目中删除后,我可以启动图像。明天早上我仍会对其进行映射,因此我将使用有关其工作原理的信息来编辑答案。
PS:我也遇到了 docker 的问题。使用最新版本。低于 1.7 存在内存泄漏问题。