一  安装netcore 2.0 SDK

在centos 上面安装netcore 2.0 与window上面是不太一样的,注意,linux是不支持同时安装两个版本的.netcore SDK的,由于我之前开发过netcore 1.04 的,现在需要升级到2.0的SDK

那如何升级。

1.找到当前的安装路径:

2.安装.netcore 2.0

在这边找到你要安装的对应的包:https://www.microsoft.com/net/download/linux

打开  yum instructions 链接:

我选择不升级内核,直接安装sdk  所以只需要执行框中的两行命令

安装完后,我们会发现:netcore 2.0 sdk 安装在usr/share/dotnet/dotnet

创建软链接:

如果之前存在,那么可以执行   ln  -s -f    souredir  lindir

再次检查dotnet 版本:

好了,版本是我们要的版本了。

二  测试本机发布

上传dotnet publish后的发布文件到centos中,可以使用

测试本机发布:dotnet  UIclub.Web.dll

我这里是由于程序已经发布到docker中跑起来了,占用的端口的原因

三 安装DOCKER

#安装Docker

yum install docker
#启动docker服务
systemctl  start docker.service
#配置开机启动
systemctl  enable docker.service

配置docker加速

配置docker加速最快的方法直接修改/etc/docker/daemon.json下的配置信息

/etc/docker/daemon.json
{
 "registry-mirrors": ["https://d8b3zdiw.mirror.aliyuncs.com"]
}
然后在终端重启docker服务
sudo systemctl daemon-reload
sudo systemctl restart docker

四 发布程序到docker中

1.拉取发布的基本镜像

docker pull docker.io/microsoft/dotnet:[tag]   拉取最新的镜像,如果你是要旧版本的镜像,可以填写相应的tag

docker images

2.配置Dockerfile

按esc  :wq保存退出

docker build -t  demo:1.0  .   -->注意:最后有个点  表示当前路径

docker run -d -p 8000:8000  demo:1.0  运行容器

查看运行的容器,正常跑起来的时候应该有一个正在运行的容器

docker ps

五.测试

至此,发布成功。

补充:

项目后期发布后遇到一个附件上传的问题,比如,创建容器后,附件是之前传到容器中的某个目录的,但是这样就会导致万一容器销毁或者机器重启后,上传的文件都丢失的问题,那么就需要解决这个问题

docker volume 技术就需要用上了,能过阅读了Docker的官方开发文档后了解到【https://docs.docker.com/engine/admin/volumes/volumes/】可以挂载相应的主机host目录到容器某个目录下,实现 所谓的容器与主机文件的读写共享。

1.直接通过DockerFile来配置挂载点,通过这种方式实现的时候,不能直接指定具体的主机挂载目录,docker会自动生成一个文件夹的映射目录,这个不推荐

2.docker run -d -p 8000/8000  -v  /test:/publish/wwwroot/upload  demo:1.0   来实现 【注意,Docker 其实是一个微的VM,要特别注意这里的 -v 后面的路径,否则指不到正确的目录】

NetCore 2.0 应用程序在centos 7上通过docker发布的更多相关文章

  1. 在Centos 7上安装Docker

    在Centos 7上安装Docker 1.docker介绍 docker是类似于vmware的虚拟化软件,可以开发.容纳.运行应用程序的平台,在容器中安全的隔离运行应用程序. 2.Docker引擎 D ...

  2. 在centos7.6上部署.netcore 3.0 web程序

    首先需要一个全新的centos系统. 第一步:按照微软官方文档配置.netcore环境: https://dotnet.microsoft.com/download/linux-package-man ...

  3. Install Docker Engine on CentOS 在CentOS 7 上安装Docker

    Install Docker Engine on CentOS OS Requirements 系统要求 To install Docker Engine,you need a maintained ...

  4. 【docker】linux系统centOS 7上安装docker

    要求: 一个centOS 7系统  虚拟就上安装CentOS 7步骤 本文操作在本机上使用xshell连接虚拟机上的centOS 7进行操作 1.Docker 要求 CentOS 系统的内核版本高于 ...

  5. 在CentOS 7上搭建Docker环境

      Preface       We commonly use VMware or VirtualBox to install our Virtual Machines before.For the ...

  6. 在CentOS 7 上使用Docker 运行.NetCore项目

    安装Docker CentOS 7 安装 Docker 编写Dockerfile 右键项目->添加->Docker 支持 选择Linux 修改为如下: FROM mcr.microsoft ...

  7. CentOS 7上搭建Docker环境

    一.Docker介绍和安装 http://linux.cn/article-4340-1.html Docker 是一个开源工具,它可以让创建和管理 Linux 容器变得简单.容器就像是轻量级的虚拟机 ...

  8. 在CentOS 7 上安装docker

    Docker CE Install yum-utils, which provides the yum-config-manager utility: $ sudo yum install -y yu ...

  9. 如何在 CentOS 7 上安装 Docker

    Docker 是一个开源工具,它可以让创建和管理 Linux 容器变得简单.容器就像是轻量级的虚拟机,并且可以以毫秒级的速度来启动或停止.Docker 帮助系统管理员和程序员在容器中开发应用程序,并且 ...

随机推荐

  1. MVC 知识点总结

    [此篇文章收录于其他博客,作为笔记使用] 一·  MVC MVC设计模式->MVC框架(前端开发框架),asp.net(webform) aspx M:Model (模型,负责业务逻辑处理,比如 ...

  2. Java技术面试汇总

    1.servlet执行流程 客户端发出http请求,web服务器将请求转发到servlet容器,servlet容器解析url并根据web.xml找到相对应的servlet,并将request.resp ...

  3. ES6学习(1)

    let 和 const 命令 ES6 新增了let命令,用来声明变量.它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效.for循环的计数器,就很合适使用let命令. 下面的代码 ...

  4. Java中super关键字的作用与用法

    Java中的super是什么?java中的super关键字是一个引用变量,用于引用父类对象.关键字“super”以继承的概念出现在类中.主要用于以下情况: 1.使用super与变量:当派生类和基类具有 ...

  5. TC和脚本语言

    TC:Turbo C 集成开发环境是由Borland 公司开发的一套C 语言开发工具,它集成了程序编辑.调试.链接等多种功能.在DOS 系统时代,Turbo C 是被最广泛使用的一种PC 机应用程序开 ...

  6. [VC]ocx控件怎么屏蔽backspace的后退键

    <script Language=javascript> function   document.onkeydown()   {   if(window.event.keyCode   = ...

  7. 【UML】类图Class diagram(转)

    http://blog.csdn.net/sds15732622190/article/details/48860711 前言 说到UML,相信大家就能立刻反应出其中的类图,为什么这么说呢,类图和用例 ...

  8. Spark集群任务提交

    1. 集群管理器 Spark当前支持三种集群管理方式 Standalone—Spark自带的一种集群管理方式,易于构建集群. Apache Mesos—通用的集群管理,可以在其上运行Hadoop Ma ...

  9. Java的数组与内存控制

    1     数组基础 数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成.其中,每一个数据称作一个数组元素(item),每个数组元素可以通过一个下标/索引来(index)访问它们. 数组 ...

  10. ubuntu 18.04下 配置qt opencv的坑

    问题和过程描述: 我按照网上的教程装了qt5.8版本,然后去配置opencv,感觉一切顺利,然后随便写了个 Mat src = imread("xxx") 然后imshow发现编译 ...