前言

前期准备

win10 (不要安装hyper-V)

VMware-Workstation-Pro/15.0

Xshell6 (非必需)

VS2019

以上环境请自行安装 都是默认安装没什么可说的 不会的话可以百度

在VM安装centos7

首先下载centos7 的镜像

镜像地址 选择网易镜像 下载快

http://mirrors.163.com/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-2003.iso

镜像配置

1.创建虚拟机=> 选择自定义

...(这里省略步骤 默认安装就行)

2.安装来源 =>安装程序光盘映像文件 选择刚刚下载centos7

...

3.处理器配置最好选择2x2 内存最好是2048MB以上 后面的磁盘空间最好是40GB

...

4.网络连接 使用桥接网络 这个很重要

...

5.完成即可

然后启动

安装向导

1.出现如图所示页面 鼠标移入 选择上键 点击enter (鼠标移出 ctrl+alt)

2.enter 直到出现安装向导的图形化界面

3.选择中文 中文简体 继续(在最下面)

4.在这里进入安装位置 点击完成

5.再进入网络和主机名页面 打开以太网 再点击完成 开始安装



6.设置ROOT密码 (如果密码太短的话 需要点击完成 两次)

7.接下来等待安装完成 (大致5-10分钟吧) 点击重启按钮即可

8.输入用户名root 和自己设置的密码

9.然后输入命令 ip a 得到网络地址

连接Xshell

1.新建 名称和主机都填入ip地址 然后添加连接

2.然后会弹出ssh安装警告 选择接受并保存

3.输入用户名root 并勾选记住用户名

4.输入密码 并勾选记住密码

5.然后就可以进入命令行模式了

安装docker

# 更新
yum -y update
# 下载docker的依赖环境
yum install -y yum-utils device-mapper-persistent-data lvm2
# 设置镜像源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 安装docker
yum -y install docker-ce
# 启动docker 服务
systemctl start docker
# 设置开机自动启动
systemctl enable docker
# 测试
docker run hello-world

出现如下所示表示成功

安装一些软件保证后续的操作

yum install -y vim
yum install -y unzip
# xshell传输文件
yum install -y lrzsz

创建netcore简单示例

1.打开vs2019 新建项目

2.选择asp.netcore web应用程序 项目模板

  1. 选择web应用程序(模板视图控制器) 勾选https配置

    勾选启用docker支持 并选择linux环境

  1. 创建项目

  2. 切换启动方式 启动项目

7.正常启动

上传文件

1.关闭程序 关闭vs2019 来到项目文件位置

将Dockerfile 文件移动到和.sln文件一个文件夹之下

2.Dockerfile文件内容

#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging.

FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443 FROM mcr.microsoft.com/dotnet/core/sdk:3.1-buster AS build
WORKDIR /src
COPY ["NetCoreSample/NetCoreSample.csproj", "NetCoreSample/"]
RUN dotnet restore "NetCoreSample/NetCoreSample.csproj"
COPY . .
WORKDIR "/src/NetCoreSample"
RUN dotnet build "NetCoreSample.csproj" -c Release -o /app/build FROM build AS publish
RUN dotnet publish "NetCoreSample.csproj" -c Release -o /app/publish FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "NetCoreSample.dll"]

3.压缩为zip文件

4.上传netcoresample.zip

cd /
# 创建目录来存放文件
mkdir workspace
cd workspace
# 上传文件(请选安装lrzsz)
rz -y # 解压文件到NetCoreSample
unzip NetCoreSample.zip -d NetCoreSample

安装dotnet环境

# 下载dotnet的环境 这两个地址同Dockerfile文件中的地址一样
# 这两个文件下面的文件地址很慢很慢很慢 我差不多用了一个下午 中间还断了好几次
docker pull mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim
docker pull mcr.microsoft.com/dotnet/core/sdk:3.1-buster 下载完成之后使用这个命令查看
docker images

运行netcore示例

# 构建镜像
docker build -t netcoresample
# 查看
docker images

# 运行实例
docker run -it --rm -p 5000:80 --name netcore_sample netcoresample &

netcore_sample 是实例名

netcoresample 是前面创建的镜像名称

# 查看
docker ps

现在就可以回到本机在浏览器中访问centos7的ip地址+端口号 192.168.1.10:5000 得到和前面看到的一样的画面就成功了。

其他

# 删除镜像命令 注意可能有依赖关系,可能需要删除两个
docker rmi -f 镜像id
# 删除docker实例
docker kill 实例id

后记

更多docker命令 请关注博主的其他文章

本文章只是演示一种部署方式 更多方式请关注博主的其他文章

如需要软件 请在下面留言

如有错误和问题 请在下方留言

asp.net core 应用docke部署到centos7的更多相关文章

  1. asp.net core 2.1 部署 centos7

    asp.net core 2.1 部署 centos7 Kestrel 非常适合从 ASP.NET Core 提供动态内容. 但是,Web 服务功能不像服务器(如 IIS.Apache 或 Nginx ...

  2. Asp.Net Core在CentOS部署与注意

    部署具体步骤参考:将ASP.NET Core应用程序部署至生产环境中(CentOS7) 1.wwwroot是放静态文件的,Startup的配置里面要app.UseStaticFiles(); 2.在不 ...

  3. ASP.NET Core开发-Docker部署运行

    ASP.NET Core开发Docker部署,.NET Core支持Docker 部署运行.我们将ASP.NET Core 部署在Docker 上运行. 大家可能都见识过Docker ,今天我们就详细 ...

  4. ASP.NET Core 1.0 部署 HTTPS (.NET Framework 4.5.1)

    var appInsights=window.appInsights||function(config){ function r(config){t[config]=function(){var i= ...

  5. ASP.NET Core 1.0 部署 HTTPS

    ASP.NET Core 1.0 部署 HTTPS ASP.NET Core 1.0 部署 HTTPS (.NET Framework 4.5.1) 提示 更新时间:2016年01月23日. 在目前介 ...

  6. ASP.NET Core开发期间部署到IIS自定义主机域名并附加进程调试

    在.NET Framework环境下,我们经常会这么做 把一个web项目不经过发布直接部署到IIS里去,配置上主机名,修改一下hosts文件,就可以用自定义的域名来访问我们的应用程序,使用附加到进程( ...

  7. asp.net core 2.1 部署IIS(win10/win7)

    asp.net core 2.1 部署IIS(win10/win7) 概述 与ASP.NET时代不同,ASP.NET Core不再是由IIS工作进程(w3wp.exe)托管,而是使用自托管Web服务器 ...

  8. ASP.NET Core托管和部署Linux实操演练手册

    一.课程介绍 ASP.NET Core 是一种全新的跨平台开源 .NET 框架,能够在 IIS.Nginx.Apache.Docker 上进行托管或在自己的进程中进行自托管. 作为一个.NET Web ...

  9. ASP.NET Core使用TopShelf部署Windows服务

    asp.net core很大的方便了跨平台的开发者,linux的开发者可以使用apache和nginx来做反向代理,windows上可以用IIS进行反向代理. 反向代理可以提供很多特性,固然很好.但是 ...

随机推荐

  1. Shell基本语法---while语句

    while语句 格式 while [ 条件判断式 ] do 执行动作 done 例子 i= while [ $i -gt ] do echo $i i=$((i - )) done

  2. Eclipse普通java Project文件路径问题

    Eclipse普通java Project文件路径问题 项目的结构如图 读取src里某个包下的文件,代码如下 BufferedReader br=new BufferedReader(new File ...

  3. Andriod开发---《横竖屏切换时 Activity的生命周期的总结》

    横屏切换竖屏Activity的生命周期详解,下面分析一下切换时具体的生命周期: 1.新建一个Activity,并把各个生命周期打印出来 2.运行Activity,得到如下信息 onCreate--&g ...

  4. fiddler替换修改后的js文件绕过无限debugger

    转自:https://www.jianshu.com/p/38c4afae636c 1.在js文件右击, 然后点击save as ..., 把js文件保存到本地.(网站:https://taodaxi ...

  5. layui常用插件(一) 轮播图

    轮播图 <html lang="en"> <head> <meta charset="UTF-8"> <meta ht ...

  6. express中post请求模块

    body-parser模块主要解析post接口请求 1.npm install  body-parser  -S 2.server.js中引用 const bodyParser=require('bo ...

  7. bootstrap-treeview 研究一下

    一直以来都是拿来主义,现在正好有空,也正好用到,准备好好研究下bootstrap-treeview. 实现目标:可搜索,可复选选中的权限控制菜单项. 研究失败 转 jstree

  8. springboot 使用 dev tool 导致 CastException

    1.背景 项目使用了 Spring + shiro 实现 权限控制, 使用AOP 对 每个 Controller 进行 log 记录时,需要从 shiro 中 获取 username字段, 问题就这样 ...

  9. Python 实现分层聚类算法

    ''' 1.将所有样本都看作各自一类 2.定义类间距离计算公式 3.选择距离最小的一堆元素合并成一个新的类 4.重新计算各类之间的距离并重复上面的步骤 5.直到所有的原始元素划分成指定数量的类 程序要 ...

  10. pandas_学习的时候总会忘了的知识点

    对Series 对象使用匿名函数 使用 pipe 函数对 Series 对象使用 匿名函数 pd.Series(range(5)).pipe(lambda x,y,z :(x**y)%z,2,5) p ...