原文:https://www.cnblogs.com/chuankang/p/9474591.html

docker发布dotnet core简单流程

照着步骤来基本没错 但是有几个要注意的地方:

  vs2019创建基于.net core 2.2的项目,Dockerfile 文件要移动到解决方案的根目录

  docker下载花了很多时间 慢得要死 不知道是不是买的服务器问题

  中间还配置了docker的下载地址还是啥的 用来加速 感觉没啥用 就没写上来,之后再补充把

  还有就是默认的docker发布.net core 2.2版本过低,需要升级,不然后面会报错

错误:Error parsing reference: "mcr.microsoft.com/dotnet/core/aspnet:2.2-stretch-slim AS base" is not a valid repository/tag: invalid reference format

解决:升级docker的版本

    原文:https://www.cnblogs.com/lonelyxmas/p/10430207.html

linux基本命令:
  cd:进入某个文件夹
    cd /

  mkdir:创建文件夹
    mkdir website

  ls:显示文件
  ll:罗列出当前文件或目录的详细信息

    判断 是 文件 还是 文件夹:
    Linux系统中,文件夹的颜色一般为蓝色。所以直接观看文件的颜色可以判断该文件是不是文件夹。
    原文:https://blog.csdn.net/qq_41112887/article/details/80922850

  rm:删除文件
    原文:https://www.cnblogs.com/tirmer/p/8616362.html
    rm -f test1.txt

  删除文件夹:
    rm -rf /home/website/webapplication1/
    注释:将会删除webapplication1目录以及其下所有文件、文件夹

  在vim编辑器中的常用命令:
    x 删除当前字符
    dd 删除当前行
    :wq 保存并退出

    进入编辑器后,
    按 "I”: 即切换到“插入”状态
    按 "ESC":左下角的插入状态不见了,就可以输入命令了

具体的步骤:

1、安装docker
  sudo yum install docker

2、启动docker
  systemctl start docker.service

3、配置开机启动
  systemctl enable docker.service

4、查看docker版本信息
  docker version

5、vs2019创建基于.net core 2.2的项目
  然后再创建 Dockerfile
  步骤:
  在项目上右键 => 添加 => Docker支持
  就会在项目的跟目录生一个文件Dockerfile(注意:该文件无后缀名)
  这个文件创建好后,把他移动到解决方案的根目录(和项目文件夹同级目录)

6、上传整个解决方案到linux系统上
  我的环境:
  本地电脑:win7 64位
  VS2019
  服务器环境:CentOS 7.6 64位(腾讯的)

  在Linux上创建文件夹:
  下载地址:http://www.zdfans.com/html/31043.html
  百度网盘(密钥:w2lv):https://pan.baidu.com/s/1EI3ADscMDQhxJlCgGD5YDA

  用的Xshell6,登录linux服务器,用webshell的方式也行。
  登录的地IP址是公网IP,其它的大致看一下界面应该都会,主要是我也忘了。
  我在 /home 下面创建了一个目录 website,路径:/home/website/

  命令:
  cd /
  ls
  cd home
  mkdir website
  ls

  在windows上,上传文件到linux:
  原文:https://blog.csdn.net/sgmcumt/article/details/79135395

  1、下载软件。地址:https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
  2、安装后的位置(我的环境是 win7 64位):C:\Program Files\PuTTY
  3、运行cmd(开始菜单选择运行 或者 windows徽标键+R),
    输入:cd C:\Program Files\PuTTY
  4、上传一个目录
    pscp -r e:/WebApplication5 root@106.54.92.81:/home/website

  在linux系统中查看文件是否已上传:
  在Xshell6中,输入命令如下:
  cd /home/website/WebApplication5
  ls

7、在linux中,执行命令,生成镜像。
  1、进入目录 WebApplication5
    cd /home/website/WebApplication5

  2、执行命令
    sudo docker build -t demo-netcore .
    注意:最后的 空格 后面有一个“.”
    这条语句最后一个字符是 “点” 不要看漏了!!

  3、默认安装的docker版本过低,需要升级。
    原文:https://www.cnblogs.com/lonelyxmas/p/10430207.html
    我是把这篇文章里面的命令执行了个遍,估计只执行下面几个应该可以吧
    yum -y remove docker*
    yum install -y yum-utils device-mapper-persistent-data lvm2
    systemctl start docker
    systemctl enable docker

  4、Docker配置加速器: 
    原文:https://www.cnblogs.com/qianxunman/p/12000843.html
    1、用编辑打开文件
    vim /etc/docker/daemon.json

    2、按“I”,复制粘贴下面的内容进去
    {
    "registry-mirrors": ["https://mirror.ccs.tencentyun.com"]
    }
    3、按“Esc”,然后输入“:wq”,接着“回车”

  5、安装最新的docker后,再执行生成镜像的命令

    sudo docker build -t demo-netcore .

8、查看生成的镜像
  之前生成的镜像名字是:demo-netcore
  命令:
  sudo docker images

9、运行docker容器
  sudo docker run --name democore -d -p 54907:80 demo-netcore

10、外网访问
  因为运行docker容器的时候 进行了 端口映射 所以外部访问端口 为 54907
  比如我的访问地址就是这个:http://106.54.92.81:54907/

图文版链接:

https://www.cnblogs.com/guxingy/p/12072324.html

Docker 简单发布dotnet core项目 文本版的更多相关文章

  1. Docker 简单发布dotnet core项目 图文版

    原文:https://www.cnblogs.com/chuankang/p/9474591.html docker发布dotnet core简单流程 需要结合这个版本看哈 地址:https://ww ...

  2. 在Centos7下发布.NET CORE项目[转]

    1.安装安装前准备开发环境 编译类库:yum -y install gcc make gcc-c++ openssl-devel 系统信息: CentOS Linux release 7.2.1511 ...

  3. .NET Core项目部署到Linux(Centos7)(六)发布.NET Core 项目到Linux

    目录 1.前言 2.环境和软件的准备 3.创建.NET Core API项目 4.VMware Workstation虚拟机及Centos 7安装 5.Centos 7安装.NET Core环境 6. ...

  4. 解决VS2015无法调试dotnet core项目

    dotnet core 1.0正式版和VS2015 update3安装后一直无法在VS中正常调试. 错误提示:The debugger's worker process (msvsmon.exe) u ...

  5. .net Core学习笔记1 创建简单的 .net core项目

    1.打开vs2017>Web 1:创建实体类: namespace ProductMvc.Models { //商品类型 public class ProductType { public in ...

  6. 手把手教你用Jenkins自动发布dotnet core程序

    Jenkins部分 首先,我们要有个Jenkins咯,下载链接:https://jenkins.io/download/ 我们安装官网教程安装好jenkins,安装教程略.... 嗯?不是说好手把手么 ...

  7. 使用 flow.ci 快速发布你的项目文档

    软件研发的协作过程中,文档是必不可少的一环,有需求文档.接口文档.使用文档等等.当开始写文档时,首先会遇到两个问题: team members 之间如何协作? 文档 OK 后如何分发,去哪里看?如何更 ...

  8. 这可能是最low的发布dotnet core站点到centos7

    前言 不得不说:我在chrome上写了好长一段,贴了23张图,然后一个crash..我想说我电脑上的chrome已经crash太多次了 以后一定要搞离线编辑的. 正文 什么是.net core,bal ...

  9. 这可能是最low的发布dotnet core站点到centos7教程

    前言 不得不说:我在chrome上写了好长一段,贴了23张图,然后一个crash..我想说我电脑上的chrome已经crash太多次了 以后一定要搞离线编辑的. 正文 什么是.net core,bal ...

随机推荐

  1. Android常用adb命令总结(一)

    ADB是android sdk里的一个工具,用这个工具可以直接操作管理android模拟器或者真实的andriod设备. ADB是一个客户端-服务器端程序,其中客户端是你用来操作的电脑,服务器端是an ...

  2. laravel集成workerman,使用异步mysql,redis组件时,报错EventBaseConfig::FEATURE_FDS not supported on Windows

    由于laravel项目中集成了workerman,因业务需要,需要使用异步的mysql和redis组件. composer require react/mysql composer require c ...

  3. [反汇编] 获取上一个栈帧的ebp

    使用代码 lea ecx, [ebp+4+参数长度] 就可以实现. 如下图,理解栈帧的结构,很好理解. 虽然也是 push param的,但这部分在恢复时被调用函数会恢复的,因此这并不算esp的值. ...

  4. Jenkins 在 Tomcat 运行访问路径设置

    问题 最近用 Tomcat 搭建了个 Jenkins ,但是访问的时候需要端口加 /jenkins/ 才能进行访问.我们是直接将 Jenkins.war 包放在 webapps下的. 我们想直接通过不 ...

  5. 关于python的十一道练习

    关于python的十一道练习 1.编写程序,输入一个自然数字符串,然后输出各位数字之和.例如,输入字符串1234,输出10. def sums1(): #第一题 strs=input('请输入一个自然 ...

  6. JS基础语法---练习:交换两个变量的值

    * JavaScript简称为JS * JavaScript是什么?     * 是一门脚本语言:不需要编译,直接运行     * 是一门解释性的语言:遇到一样代码就解释一行代码     * C#语言 ...

  7. tornado中传递参数的几种方式

    方法一 :tornado路由可以使用正则表达式中的子表达式传递url参数.比如:(r"/member//(\w*)/([01]*)", MemberHandler)匹配以后,tor ...

  8. Vue响应式原理及总结

    Vue 的响应式原理是核心是通过 ES5 的保护对象的 Object.defindeProperty 中的访问器属性中的 get 和 set 方法,data 中声明的属性都被添加了访问器属性,当读取 ...

  9. 如何突破DNS报文的512字节限制

    - DNS的512字节限制 根据协议标准,DNS协议同时占用UDP和TCP的53端口,这是为什么呢? 翻阅DNS资料,可以发现,DNS协议默认按UDP传输,为优化传输性能,DNS协议有一个512字节的 ...

  10. Android Monkey使用

    Monkey 是什么? Android SDK自带的压力测试工具,也是一个命令行工具.它向系统发送伪随机的用户事件流(如按键输入,触摸屏输入,手势输入等),实现对正在开发的应用程序进行压力测试. (1 ...