此篇文章演示基本的基于docker部署.netcore服务,liunx系统腾讯云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

liunx系统docker部署.net core3.1的更多相关文章

  1. 微服务探索之路01篇.net6.0项目本地win10系统docker到服务器liunx系统docker的贯通

    本文介绍从创建 net6.0 项目运行在 windows 开发环境的 docker 然后正式部署至 liunx 服务器. 1 windows10 安装 docker 下载docker-desktop ...

  2. .net core 2.0学习笔记(二):部署到Windows和Liunx系统

    .Net Core最大的亮点就是跨平台了,下面介绍下在Windows下和Liunx下的部署. 首先发布项目文件,点击网站项目右键 发布: 从下图发布的文件图片可以看出,不像以前bin目录下有很多dll ...

  3. **测试某系统切换成docker部署之后性能的下降情况**

    ###分析 * 对比:某系统/docker* A:某系统性能情况* B:dockers部署的性能情况* 求出A&B两者之间的差异* 确定性能指标(tps)* 测试报告里体现:tps的变化 ## ...

  4. Docker学习笔记三:Docker部署Java web系统

    Docker部署Java Web系统 1.在root目录下创建一个路径test/app mkdir test && cd test&& mkdir app && ...

  5. Centos 7使用docker部署LAMP搭建wordpress博客系统

    0.简要概述 LAMP是目前比较流行的web框架,即Linux+Apache+Mysql+PHP的网站架构方案.docker是目前非常流行的虚拟化应用容器,可以为任何应用创建一个轻量级.可移植的容器. ...

  6. 使用Docker部署Spring-Boot+Vue博客系统

    在今年年初的时候,完成了自己的个Fame博客系统的实现,当时也做了一篇博文Spring-boot+Vue = Fame 写blog的一次小结作为记录和介绍.从完成实现到现在,也断断续续的根据实际的使用 ...

  7. 使用Docker部署监控系统,Prometheus,Grafana,监控服务器信息及Mysql

    使用Docker部署监控系统,Prometheus,Grafana,监控服务器信息及Mysql 一.docker部署prometheus监控系统 1.1 配置安装环境 1.1.1 安装promethe ...

  8. teprunner测试平台部署到Linux系统Docker

    本文是一篇过渡,在进行用例管理模块开发之前,有必要把入门篇开发完成的代码部署到Linux系统Docker中,把部署流程走一遍,这个过程对后端设计有决定性影响. 本地运行 通过在Vue项目执行npm r ...

  9. Docker在手,天下我有,在Win10系统下利用Docker部署Gunicorn+Flask打造独立镜像

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_164 书接上回,之前一篇:Win10环境下使用Flask配合Celery异步推送实时/定时消息(Socket.io)/2020年最 ...

随机推荐

  1. 【Java面试】数据库连接池有什么用?它有哪些关键参数?

    一个工作5年的粉丝找到我,他说参加美团面试,遇到一个基础题没回答上来. 这个问题是:"数据库连接池有什么用?以及它有哪些关键参数"? 我说,这个问题都不知道,那你项目里面的连接池配 ...

  2. CSCMS代码审计

    很久之前审的了. 文章首发于奇安信攻防社区 https://forum.butian.net/share/1626 0x00 前言 CSCMS是一款强大的多功能内容管理系统,采用php5+mysql进 ...

  3. JS:变量的作用域

    1.作用域: 指一个变量它在哪些代码范围能够被使用,这些地方就是变量的作用域 JS中的两种作用域: 1.全局作用域.2.函数作用域   2.在es5中 函数的代码块内部的代码 可以访问形参变量  也可 ...

  4. 从 CPU 讲起,深入理解 Java 内存模型!

    Java 内存模型,许多人会错误地理解成 JVM 的内存模型.但实际上,这两者是完全不同的东西.Java 内存模型定义了 Java 语言如何与内存进行交互,具体地说是 Java 语言运行时的变量,如何 ...

  5. python 基础知识-day6(内置函数)

    1.sorted():用于字典的排序 dict1={"name":"cch","age":"3","sex&q ...

  6. UiPath鼠标操作文本的介绍和使用

    一.鼠标(mouse)操作的介绍 模拟用户使用鼠标操作的一种行为,例如单击,双击,悬浮.根据作用对象的不同我们可以分为对元素的操作.对文本的操作和对图像的操作 二.鼠标对文本的操作在UiPath中的使 ...

  7. ssh-修改ssh服务端口号

    在启动selinux的状态下修改ssh的端口号 0.启动selinux     setenforce 1     getenforce 1.修改sshd_config的Port为2234 查看2234 ...

  8. 飞鱼CRM

    直接放干货吧,今日头条飞鱼CRM的PHP调用方法,点我跳转. 很简单的两个方法,加密时重要的是有一个空格,必须要有,这个也是坑了我很长时间的一个坑. 接下来具体说一下飞鱼CRM系统接口加密的方法. & ...

  9. 关于 k 进制线性基

    本质还是高斯消元,使其成为上三角矩阵.但是 \(k\) 不一定是质数. 但我们不需要保证已有数字不改变,只要维护的是一个上三角矩阵就行.所以我们可以利用更相减损让其中一个向量的最高位 \(= 0\) ...

  10. Linux操作系统(2):组管理和权限管理

    组管理和权限管理 Outline 1.查看文件所有者:ls -ahl 2.更改文件或目录权限命令:chmod 3.更改文件或目录所有者命令:chown 4.更改文件或目录所属组命令:chgrp 1)组 ...