net core docker

1.如果使用运行目录挂载模式,那么需要在run时使用 entrypoint指定 dotnet 和 [projectname].dll,如果不加则容器运行不起来,asp.net的程序则不需要这个。注意格式不能错,

     docker run -d --name mymvc -e "ASPNETCORE_ENVIRONMENT=Development" -w "c:/app" -v "D:\mymvc\publish:c:/app" -p 5000:80 --entrypoint dotnet  microsoft/dotnet:2.2-sdk-nanoserver-1803 mymvc.dll

      ASPNETCORE_ENVIRONMENT可以不需要,这是为了方便调试使用。

     除了dotnet 其他执行程序要放到 镜像后面。网上还真没查到,最后是看vs2017再使用docker调试模式时生成的docker run的格式调整而来。如果不是必须挂在模式,建议就使用打包模式,这样dockerfile更方便。

2.如果要把应用程序打包到镜像则使用build 和run配合来使用。

3.nat模式下,容器重启会导致IP变化,如果run时希望绑定IP则可以使用 docker run --ip ***.***.***.*** 。IP段可以不和Nat网关的IP段一致。但是注意,如果该Nat的subnet和gateway是空着的话,则不能指定固定IP。为空则通常是由于安装docker不完整导致(目前看来是)。查看network可以使用如下命令  docker network ls   , docker network inspect [network id]

猜你喜欢

转载自www.cnblogs.com/bournexxl/p/10334043.html