Docker - 容器运行 .Net Core

docker 常用命令

docker images // 查看当前已有的docker镜像文件
docker ps -a //查看当前已经运行镜像
docker logs  容器名称  //查看日志信息
docker build -t mytest . //编译.net core 项目 mytest 为 docker 镜像
docker run --name mytest  -d -p 6666:6666  mytest //运行一个名字为mytest的后台镜像,
端口映射为外网6666,内网6666,镜像由mytest 生成。

首先,项目,右键,选择添加docker 支持(这一部分操作必须)

 

然后选择 linux 主要是为了发布到  centos 上

然后,确定,会变成这样

其实就是多了一个 Dockerfile 文件。

默认里面内容是:

#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging.
 
FROM mcr.microsoft.com/dotnet/core/runtime:3.1-buster-slim AS base
WORKDIR /app
 
FROM mcr.microsoft.com/dotnet/core/sdk:3.1-buster AS build
WORKDIR /src
COPY ["ConsoleApp1/ConsoleApp1.csproj", "ConsoleApp1/"]
RUN dotnet restore "ConsoleApp1/ConsoleApp1.csproj"
COPY . .
WORKDIR "/src/ConsoleApp1"
RUN dotnet build "ConsoleApp1.csproj" -c Release -o /app/build
 
FROM build AS publish
RUN dotnet publish "ConsoleApp1.csproj" -c Release -o /app/publish
 
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "ConsoleApp1.dll"]

实际上,只需要 是以下的内容就可以了。 

FROM mcr.microsoft.com/dotnet/core/runtime:3.1-buster-slim AS base
WORKDIR /app
COPY . .
ENTRYPOINT ["dotnet", "ConsoleApp1.dll"]

然后,复制到 linux上,然后,运行以下命令

docker build -t mytest .

其中  mytest为名字,默认只能小写

而 . 表示 在当前目录下找 Dockerfile 文件。

执行后如下图所示:

docker image 命令查看是否已经安装

然后,使用此镜像。

docker run --name mytest  -d -p 6666:6666  mytest

 

参数解释:

     --name 表示容器名称(区分大小写),也可以不指定,默认会生成

     -d         表示在后台以守护形式运行容器

     -p         表示外部端口与内部容器端口映射。

    mytest 是我们刚才创建的镜像名称

执行后,结果如下:

然后执行 命令查看,是否运行成功

可见我们的镜像已经在执行了。

然后,查看它的日志,看看它输出了什么

docker logs mytest

查看,结果如下:

 

跟我程序的输出是一致的。

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值