一、首先先添加一个.netCore 项目,选择启用docker(我用的是vs2019,之前的可能需要手动点击项目添加docker支持)

没有的话需要手动添加

之后你的项目会存在这个dockerfile文件

二、编辑dockerfile文件

1.右键dockerfile属性,选择始终复制

2.修改dockerfile文件内容

这几个要跟项目名一致

FROM mcr.microsoft.com/dotnet/aspnet:3.1 AS base
COPY . /WebApplication1
WORKDIR /WebApplication1
EXPOSE 80
EXPOSE 443 ENTRYPOINT ["dotnet", "WebApplication1.dll"]

之后本地IIS运行一下,确保项目是能够正常运行的

ok,运行没问题,接下来项目发布成文件形式(我这边是存在publish文件下)

得到这些文件

三、接下来到Ubuntu中部署(我这边是用的vmware装的虚拟机)

把文件考到ubuntu来,(考不进来可以用WinScp或者xftp上传文件,具体怎么使用我就不多说了,具体百度)

部署也比较简单,只需要一步一步跟着来就行!

1.进入dockerfile所在的目录,构建一个名字叫做webapp的镜像注意build后面还有一个 .  (代表当前构建镜像的上下文路径)

看到这个就代表离成功就差一步之遥啦!只要启动我们刚刚创建好的容器就行了

2. 启动:

docker run --name=webapp -d -p 8044:80 webapp

8044代表你要访问的端口号

出现这个就代表ok啦!

再来看下容器运行情况:docker ps -a

ok,木有问题,最后浏览器访问一下看看?

访问成功!到此就完成啦!

最后,不同的环境可能会出现各种奇奇怪怪的问题,一下提供些解决思路:

1)查看应用启动是否正常,如果有错误日志,复制错误日志去百度搜索!!!!!!!特别重要
                    
2)启动正常,则先在本机使用 CURL "http://localhost:8044/"  访问对应的接口,看是否有响应,如果有的话会返回对应页面的html源码

3)启动正常,且curl有响应,则检查是否有关闭防火墙,或者开放对应的访问端口,开放端口才可以访问

4)腾讯云和阿里云都是有安全组,类似外层防火墙,一定要去web控制台检查是否有开启端口

最后的最后,附带一些参考资料:

1.docker端口映射:https://www.jianshu.com/p/b92d4b845ed6

2.其他博主的简洁部署参考:https://www.jianshu.com/p/85051fbd3873

3.容器使用代码:https://www.runoob.com/docker/docker-container-usage.html

.net core Ubuntu下docker部署(精简版)的更多相关文章

  1. ubuntu下vnc部署安装

    ubuntu下vnc部署安装,参考如下博客:https://www.cnblogs.com/xuliangxing/p/7642650.html https://jingyan.baidu.com/a ...

  2. Tars | Win10下Docker部署TarsJava(SpringBoot)全过程及踩坑记录

    @ 目录 前言 1. 相关环境版本: 坑点一:VMware与Win10 Docker冲突 坑点二:20.版本TarsJava(SpringBoot)依赖文件缺失 2. Docker安装: 坑点三:Do ...

  3. ASP.NET Core:ASP.NET Core程序使用Docker部署

    一.前言 这篇文章介绍如何将一个ASP.NET Core应用程序在Docker中进行部署.开发工具使用的是Visual Studio 2019和VS Code. 二.使用Docker部署 我们选择新建 ...

  4. Windows 下 docker 部署 gitlab ci

    一.安装 1. 安装 docker Docker下载 注意:Windows 10 家庭版获取 之前的版本不能直接安装 Docker ,而是需要去安装 Docker Toolbox 我这里安装的是 Do ...

  5. 基于VS2017的Docker Support体检ASP.NET Core站点的Docker部署

    最近在学习如何用 Docker 部署生产环境中的 ASP.NET Core 站点,作为一个 Docer 新手,从何处下手更容易入门呢?一开始就手写 Docker 配置文件(Docfile, docke ...

  6. ubuntu下安装Firefox中国版解决Ubuntu与Windows下Firefox账号同步问题(已解决)

    1. 下载最新版本火狐Linux版 下载地址:http://firefox.com.cn/download/ 选择火狐Linux64-bit版,下载后文件为:Firefox-latest-x86_64 ...

  7. win10下 安装迅雷精简版

    下载链接:https://files-cdn.cnblogs.com/files/del88/ThunderMini_1.5.3.288.zip 他妈的 今天安装迅雷精简版 在win10上 竟然报错, ...

  8. ubuntu下docker安装

    首先来一个官网安装教程链接:https://docs.docker.com/install/linux/docker-ce/ubuntu/ 目前docker主要有docker-CE 与 docker- ...

  9. Mac下 Docker部署SpringBoot应用

    一.安装Docker环境 使用 Homebrew 安装 macOS 我们可以使用 Homebrew 来安装 Docker. Homebrew 的 Cask 已经支持 Docker for Mac,因此 ...

  10. Ubuntu 安装 Docker CE(社区版)

    参考自 https://yeasy.gitbooks.io/docker_practice/install/ubuntu.html#ubuntu-1604- docker-io 是以前早期的版本,版本 ...

随机推荐

  1. 基于jenkins+kubernetes的cicd流程实践一:环境搭建及方案原理实现

    1.基础环境:Centos7.9,kubernetes:v1.21.5 node-1@112(master):docker,containerd,harbornginx(80),git,etcd no ...

  2. Redis分布式锁应用

    Redis锁的使用 起因:分布式环境下需对并发进行逻辑一致性控制 架构:springboot2.Redis IDEA实操 先新建RedisLock组件 注:释放锁使用lua脚本保持原子性 @Compo ...

  3. python 爬取豆瓣电影评论,并进行词云展示

    python 爬取豆瓣电影评论,并进行词云展示 本文旨在提供爬取豆瓣电影<我不是药神>评论和词云展示的代码样例 1.分析URL 2.爬取前10页评论 3.进行词云展示 1.分析URL 我不 ...

  4. CBV如何添加装饰器?

    目录 一:CBV如何添加装饰器 1.CBV中django不建议直接给类的方法加装饰器 2.CBC添加装饰器的三种方法 3.CBV添加装饰器实战 一:CBV如何添加装饰器 1.CBV中django不建议 ...

  5. 更改jenkins的工作目录

    1.原始工作空间 2.目的盘符 3.任务管理器,找到Jenkins邮件转到详细信息 4.找到jenkins.exe打开文件所在位置 5.找到jenkins.xml打开 6.修改value值 改前: 改 ...

  6. java逻辑运算中异或^

    本文主要阐明逻辑运算符^(异或)的作用 a ^ b,相异为真,相同为假. 注意,异或运算,还能交换两个变量. int a = 1; int b = 2; System.out.println(&quo ...

  7. GOCVHelper图像处理算法库实例整编

        GOCVHelper主要包含图像处理.图像增强和基础文件处理三个部分.由于前两个部分较具有通用性,而且我在不同项目中都进行了反复使用,为了进一步说明类库内容,这里反过来从项目角度出发,对现有的 ...

  8. 关于 MySQL 嵌套子查询中,无法关联主表字段问题的折中解决方法

    今天在工作中写项目的时候,遇到了一个让我感到几乎无解的问题,在转换了思路后,想出了一个折中的解决方案,记录如下. 其实,问题的场景,非常简单: 就是需要查询出上图的数据,红框是从 项目产品表 中查询的 ...

  9. go_json_learn

    解析嵌套类型示例: func test3() { b := []byte(`{"Name":"tom","Age":20,"Ema ...

  10. [python] 基于chardet识别字符编码

    对于人类能够识别的字符,计算机会根据某一对应关系将其转换为二进制形式进行保存.这个对应关系就是字符编码表,即什么样的字符对应什么样的二进制编码.这种字符编码表往往是多种多样的,因此,如果我们想要将一个 ...