如何配置docker通过bash正确运行

时间:2019-05-23 14:11:59

标签: docker asp.net-core

我制作了.net核心WebApi,并通过Visual Studio docker支持将docker添加到其中。

通过Visual Studio的“运行”选项运行容器可以正常工作。 我想做的是通过批处理运行此容器,这样我就可以访问我的应用程序,而不必在Visual Studio中运行它(这样它就可以一直运行),但是这样做有些麻烦。

为此,我正在关注本教程https://docs.docker.com/engine/examples/dotnetcore/ 我已经尝试过更改端口一百万次,但没有成功。我还在线搜索了我的问题,但找不到任何东西。

我还尝试过从.net核心应用程序中的配置中删除sslport,但是当我这样做时,该应用程序将不再通过Visual Studio中的docker运行。

我用来在计数器上运行图像的命令是: docker run -it -d -p 65117:80 apiwithjwt:dev

我期望的是,如果我浏览端口65117,将会看到我的Web应用程序。

当我键入时:docker container ls。这是我看到的: https://imgur.com/a/RQUxowb 在顶部,您可以看到我的容器由Visual Studio自动制作,在底部,您可以看到我用上面的命令创建的容器。如您所见,似乎我添加的端口缺少某些内容。 我的端口来自launchsettings.json

中的此设置
  {
   "iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
  "applicationUrl": "http://localhost:65118",
  "sslPort": 44335
}
},

如何通过bash命令传递sslPort?或者,如何从.net核心应用程序中删除sslPort并仍然使其正确运行。 当前结果:什么都没看我何时去港口。

1 个答案:

答案 0 :(得分:0)

对于由VS创建的运行映像,您需要以Release模式构建映像,请参考How to run docker image produced by VS 2017

您可以使用以下步骤的命令来构建图像:

  1. CD到包含Dockerfile的文件夹的父文件夹
  2. 运行命令docker build -f "DockerTest/Dockerfile" -t dockertest:test .
  3. 运行命令docker run -it -d -p 65119:80 dockertest:test