怎么使用docker部署.NET8.0发布好的项目

本文主要说明使用.NET 8.0 搭建的站点中发布好以后,如何使用docker容器化部署这个站点。

编写Dockerfile文件

编写Dockerfile文件如下(注意这个文件的编写是我们用docker部署站点能否成功运行的关键):

#引入镜像,低版本 docker 去掉  AS base
FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base
#指定作者名称
MAINTAINER lee

#配置工作目录 相当于cd
WORKDIR /app
  
#暴露容器端口,此端口与程序运行路径一致,可
EXPOSE 7070

#复制文件到工作目录
COPY . .
 
#ENV :配置系统环境变量,比如程序环境环境等在这里配置(开发、预发、线上环境)
#这里是配置程序运行端口,如果程序不使用默认的80端口这里一定要设置(程序运行端口)
ENV ASPNETCORE_URLS http://+:7070

#设置时间为中国上海,默认为UTC时间
ENV TZ=Asia/Shanghai
#RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

#启动程序
ENTRYPOINT ["dotnet", "BookInDocker.dll"]

注意你自己的项目所生成的dll项目文件的名称,需要修改成你自己的dll项目文件名称.

在发布文件夹下添加名为Dokcerfile文件,需要注意此文件没有后缀,同时需要注意文件名的大小写,如下图所示:

 

 然后用这个dockerfile文件创建镜像:

docker build -t bookdoc_re2:2.0 .

等待执行结果,执行完成以后

执行完成以后,运行查看镜像的命令,此时中镜像列表中能看到这个镜像名称:

PS D:\我的pc路径\Desktop\bookindocker> docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
bookdoc_re2 2.0 a3497450e593 21 seconds ago 226MB
hello_myimage latest 16b2117f77f4 6 days ago 7.83MB
hello_my_book_image latest cf0d6995aecd 3 weeks ago 217MB
portainer/portainer-ce 2.21.5 0c03664af9ed 3 weeks ago 308MB
nginx latest f876bfc1cc63 7 weeks ago 192MB

镜像创建完成以后,就可以将镜像运行起来了,命令如下:

docker run -d -p 7070:7070 bookdoc_re2:2.0
30cbc02b8159cddbe9f8b61288a4ff292d5b55f225a82de2b2afaefd1b031527

命令正常返回容器的id,此时容器启动成功,打开浏览器,注意端口好,也要设置成自己的端口号:

页面正常显示,此时,部署.net8.0变异好的项目用docker已经部署成功.

 

这样看来是不是很简单啊,所以你要试一下吗?

posted @ 2025-01-15 17:35  kdkler  阅读(531)  评论(0)    收藏  举报
我的博客   我的时间线   自定义科技