一、准备工具

Win 10

Centos 8

Visual Studio 2019

Docker Desktop  下载地址:https://download.docker.com/win/stable/Docker%20Desktop%20Installer.exe

二、Cenos 8安装docker

1、安装

 yum install docker          安装docker
systemctl start docker.service  启动docker服务
systemctl enable docker.service  设置docker服务开机自启动

2、检查

 docker -v

 三、创建.net core 3.1项目并发布

1、创建项目

 注意:勾选启用Docker支持,选择Linux。

注意:将Dockerfile文件属性改为:始终复制。

 2、生成项目,现在本地使用docker运行,保证项目正常运行。

第一次运行的时候,会提示你运行Docker Desktop,无脑点是。继续运行会自动下载运行项目时所需要的镜像,静等complete即可。

3、本地运行成功

 4、本地发布

发布后的文件结构

 5、修改Dockerfile文件地址

由于我们是发布到本地,vs帮我们自动生成的Dockerfile文件里,包含了生成—>发布—>运行的所有流程,在这里,我们只需要最后一步运行的数据就行了。

dockerfile文件指令说明:

  • FROM -指定所创建镜像的基础镜像
  • WORKDIR-配置工作目录
  • EXPOSE-声明镜像内服务监听的端口 (可以不写,因为我们具体映射的端口可以在运行的时候指定)
  • COPY-复制内容到镜像   (. .代表当前目录)
  • ENTRYPOINT-启动镜像的默认人口命令

6、打包到Centos 8服务器,我这里使用的是:SecureCRT

 7、构建docker镜像

  进入到服务器的相关文件夹路径,输入:

 docker build -t mytest-mvc .

注意:结尾的 . 不能漏掉

参数解释:

  • -t 指定镜像名称 (只能小写)
  • .  表示build上下文为当前目录,默认情况docker会使用上下文的根目录找到Dockerfile文件

查看构建的镜像,输入:

 docker image ls

 8、创建并运行容器

 docker run --name myfirstWeb  -d -p 5001:2345  firstdocker

参数解释:

  • --name  表示容器名称(区分大小写),也可以不指定,默认会生成
  • -d          表示在后台以守护形式运行容器
  • -p          表示外部端口与内部容器端口映射。关于-p的还有其他用法(https://www.cnblogs.com/williamjie/p/9915019.html)
  • 结尾       表示上一步创建的镜像名称

查看容器运行情况,输入:

 docker ps -a

 最后,我们在本地请求:

如果发现请求不了,多半是下面两种情况:

1、对外映射的端口没开启。

 //查询端口号XXX 是否开启
firewall-cmd --query-port=XXX/tcp
//开启端口
firewall-cmd --zone=public --add-port=XXX/tcp --permanent
//重启防火墙
firewall-cmd --reload

2、创建运行容器时监听的端口弄错了:

 //查看容器运行日志
docker logs 容器ID


容器相关常用命令:

 //查看容器运行日志
docker logs 容器名称/容器ID
//停止运行容器
docker stop 容器名称/容器ID
//删除容器
docker rm 容器名称/容器ID
//重启容器服务
systemctl restart docker

将Asp.Net Core3.1项目,使用Docker 部署到Centos 8的更多相关文章

  1. 什么样的项目适合docker部署,docker应用场景

    docker官网上说明了docker的典型场景: 使应用的打包与部署自动化 创建轻量.私密的PAAS环境 实现自动化测试和持续的集成/部署 根据这些特性,我们可以想象一下,如果你的项目有如下痛点或者需 ...

  2. Centos下使用Docker部署asp.net core项目

    本文讲述 CentOS 系统 Docker 中部署 asp.net core开源项目 abp 的过程 步骤 1. 拉取 asp.net core 基础镜像 docker pull microsoft/ ...

  3. docker部署angular和asp.net core组成的前后端分离项目

    最近使用docker对项目进行了改进,把步骤记录一下,顺便说明一下项目的结构. 项目是前后端分离的项目,后端使用asp.net core 2.2,采用ddd+cqrs架构的分层思想,前端使用的是ang ...

  4. ASP.NET Core3.1使用IdentityServer4中间件系列随笔(二):创建API项目,配置IdentityServer保护API资源

    配套源码:https://gitee.com/jardeng/IdentitySolution 接上一篇<ASP.NET Core3.1使用IdentityServer4中间件系列随笔(一):搭 ...

  5. 《Asp.Net Core3 + Vue3入坑教程》-Net Core项目搭建与Swagger配置步骤

    简介 <Asp.Net Core3 + Vue3入坑教程> 此教程仅适合新手入门或者前后端分离尝试者.可以根据图文一步一步进操作编码也可以选择直接查看源码.每一篇文章都有对应的源码 教程后 ...

  6. 《Asp.Net Core3 + Vue3入坑教程》 - Vue 1.使用vue-cli创建vue项目

    简介 <Asp.Net Core3 + Vue3入坑教程> 此教程适合新手入门或者前后端分离尝试者.可以根据图文一步一步进操作编码也可以选择直接查看源码.每一篇文章都有对应的源码 目录 & ...

  7. 从零实操基于WSL2 Docker部署Asp.Net Core项目

    前言 平日在公司里都是基于阿里Teambition中的飞流进行Docker部署Api项目或服务,已经习惯了那一套成熟的操作流程,开发和部署确实快捷方便,但是还没在自己的电脑上进行操作过,特别是Wind ...

  8. ASP.NET Core Docker部署

    前言 在前面文章中,介绍了 ASP.NET Core在 macOS,Linux 上基于Nginx和Jexus的发布和部署,本篇文章主要是如何在Docker容器中运行ASP.NET Core应用程序. ...

  9. Gitlab CI 自动部署 asp.net core web api 到Docker容器

    为什么要写这个? 在一个系统长大的过程中会经历不断重构升级来满足商业的需求,而一个严谨的商业系统需要高效.稳定.可扩展,有时候还不得不考虑成本的问题.我希望能找到比较完整的开源解决方案来解决持续集成. ...

随机推荐

  1. git和github连接权限(这是一个简便方法,不是很安全,建议大家还是用ssh解决)

    在使用,git从github上clone下来代码后. 我们再工作区进行编辑,然后提交. 最后我们想要将我们的改变推送到github上. 但是往往这个时候,我们可能会面临这样的问题. 我们没有权限将代码 ...

  2. 高效C++:序

    C++的语法全而复杂,如何简洁高效的使用C++的各种语法,是一个值得研究的问题,特别是对于刚入门或是有小几年开发经历的同学,了解或是熟悉这个问题,所得到的提升无疑是巨大的.向前人学习,站在巨人的肩膀上 ...

  3. ubuntu安装 jdk

    首先查一下当前JDK的版本 ,一般是系统自带Jdk$ java -version 然后根据版本8安装完整版的OpenJDK $ sudo apt-get install openjdk-8-jdk 如 ...

  4. C#递归的简单实例

    using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threa ...

  5. hostapd阅读(openwrt)-3

    从官网下载相对而言比较干净的源码版本http://w1.fi/hostapd/,然后将其移植到openwrt下,方便在源码阅读时候进行调试编译,移植的过程总结如下心得. 1. openwrt编译与cl ...

  6. python中的subprocess.Popen()使用详解---以及注意的问题(死锁)

    从python2.4版本开始,可以用subprocess这个模块来产生子进程,并连接到子进程的标准输入/输出/错误中去,还可以得到子进程的返回值. subprocess意在替代其他几个老的模块或者函数 ...

  7. 一个简单的Android小实例分享,包含recycleView与recyclerView嵌套

    先上图: 1.首页 2.第二页 3.第三页 项目目录: 代码不多,本人太懒,就不贴了 项目地址:

  8. 编写优美Android注释的常用语法

    编写优美Android注释的常用语法   短期目标是定期能出一篇简文,希望自己能坚持下去~~~~( ̄_, ̄ )   附上Android君 今天要分享的是关于Android注释系统的一些强大功能!! 实 ...

  9. 自述:转职IT ,痛苦一阵子;不转职IT,痛苦一辈子(第一章)

    作为一个从后期制作转职过来的Java工程师,我认为我是幸运的,虽然我的本科专业(影视后期)也是火爆行业,不愁工作,但我不后悔进入这个IT坑,毕竟转行,只痛苦一阵子,但是不转行,可能我会痛苦一辈子. 我 ...

  10. P4221 [WC2018]州区划分 无向图欧拉回路 FST FWT

    LINK:州区划分 把题目中四个条件进行规约 容易想到不合法当前仅当当前状态是一个无向图欧拉回路. 充要条件有两个 联通 每个点度数为偶数. 预处理出所有状态. 然后设\(f_i\)表示组成情况为i的 ...