绑定完请刷新页面
取消
刷新

分享好友

×
取消 复制
Linux系统docker部署.net core3.1
2022-09-02 15:45:46

此篇文章演示基本的基于docker部署.netcore服务,linux系统腾讯云ubuntu,.net core版本3.1。

1.安装docker

apt install docker.io

2.拉取.net core依赖镜像

docker pull mcr.microsoft.com/dotnet/core/aspnet:latest

3.创建.net core3.1项目,选择docker支持,会生成dockerFile配置文件如图:

4.编写dockerfile文件,经删减后为:

FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim AS base
FROM mcr.microsoft.com/dotnet/core/sdk:3.1-buster
WORKDIR /app
EXPOSE 5000

COPY . .

ENTRYPOINT ["dotnet", "MyDockerApi.dll"]

5.发布项目到本地


注意下,dockerFile文件一定要带过来,接下来,将所有文件,压缩成zip包。。好是zip,不然linux解压很麻烦

6.在linux系统根目录,新建(mkdir)project文件夹,进入(cd)project文件夹,继续新建myDockerApi文件夹,然后进入。

7.上传刚才的zip压缩包,并解压

上传命令:rz -y,本地选择,上传进来,解压命令:unzip -o MyDockerApi.zip

8.镜像打包

docker build -t my1api .   注意后有一个.,

9.创建基于该镜像的docker容器,并启动

命令:docker run --name API8082 -p 8081:5000 my1api ,参数解读:

--name xxxxx:容器名字

8081:将liunx端口分配给该容器的端口

:5000:将物理机端口映射到docker程序的启动端口

my1api:使用的镜像名称

可以看到,服务已经起来了,这时候,如果外部想要访问服务,需要在腾讯云防火墙新增出站端口8081

这时候,访问服务接口:


使用命令,列出当前所有容器,状态等等:

docker container ls -a


容器的启动/停止命令:

docker start API8082(容器名称/ID)

docker stop API8082(容器名称/ID)

10.如果代码更新了,怎么办

(1)将更新好的代码上传

(2)重新build镜像

(3)停止docker容器

(4)删除docker容器 docker rm 容器名称/ID

(5)重新创建容器并启动 docker run --name API8082 -p 8081:5000 my1api

分享好友

分享这个小栈给你的朋友们,一起进步吧。

Linux技术精选专区
创建时间:2020-07-08 10:30:23
Linux,全称GNU/Linux,是一套免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年次释出,它主要受到Minix和Unix思想的启发,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。
展开
订阅须知

• 所有用户可根据关注领域订阅专区或所有专区

• 付费订阅:虚拟交易,一经交易不退款;若特殊情况,可3日内客服咨询

• 专区发布评论属默认订阅所评论专区(除付费小栈外)

技术专家

查看更多
  • dapan
    专家
戳我,来吐槽~