asp.net core应用docke部署到centos7的全过程

所属分类: 网络编程 / ASP.NET 阅读数: 766
收藏 0 赞 0 分享

前言

前期准备

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应用程序 项目模板

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

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

创建项目

切换启动方式 启动项目

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

运行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的文章就介绍到这了,更多相关asp.net core应用docke部署到centos7内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

更多精彩内容其他人还在看

ASP.Net 之Datalist删除功能详解附代码

ASP.Net 之Datalist删除功能详解附代码,需要的朋友可以参考一下
收藏 0 赞 0 分享

ASP.NET(C#)验证数字的两种方法

ASP.NET(C#)验证数字的两种方法,需要的朋友可以参考一下
收藏 0 赞 0 分享

此页的状态信息无效,可能已损坏 的处理办法及原因分析

此页的状态信息无效,可能已损坏 的处理办法及原因分析,需要的朋友可以参考一下
收藏 0 赞 0 分享

MultiLine 换行后实现读取不换行的具体思路

输入内容中有换行,保存到数据库,直接查看感觉没有换行,但查询结果“以文本格式显示结果”你就会发现 其实是有换行的,下面与大家分享下具体的解决方法
收藏 0 赞 0 分享

swfupload ajax无刷新上传图片实例代码

在这里上传图片就需要用到ajax无刷新上传图片,这里面包含的东西不是一点半点。这里用到的是一个插件swfupload实现无刷新上传图片,感兴趣的朋友可以参考下哈
收藏 0 赞 0 分享

静态gb2312编码在项目传值出现中文乱码现象

参考的美工静态页面是gb2312格式的,当此编码拿到项目中后,utf-8编码的系统,加载页面时,会出现样式问题,比如不能正常居中等
收藏 0 赞 0 分享

System.Timers.Timer定时执行程序示例代码

如果是某个逻辑功能的定时,可以将code放到逻辑功能的类的静态构造函数中,在该逻辑类第一次执行时,静态构造函数会被调用,则定时自然启动
收藏 0 赞 0 分享

分享下Asp.Net面试题目及答案集合

这篇文章主要是总结asp.net开发人员在面试过程中常遇到的一些问题小结,需要的朋友可以参考下
收藏 0 赞 0 分享

给自定义Web控件添加事件(前后台代码)

给自定义控件(Web Control)添加事件具体前后台代码如下,感兴趣的朋友可以参考下哈
收藏 0 赞 0 分享

ASP.NET过滤器的应用方法介绍

ASP.NET过滤器的应用方法介绍,需要的朋友可以参考一下
收藏 0 赞 0 分享
查看更多