ubuntu-18.04.3与.net Core 2.2之旅(1)- Windows 7 X64+VMware+ubuntu-18.04.3部署.Net Core 2.2过程详细图解

Windows 7 X64+VMware+ubuntu-18.04.3+Visual Studio 2017部署.Net Core 2.2过程详细图解

https://blog.csdn.net/xjzdr/article/details/103494284

一、ubuntu-18.04.3的下载与安装 

1、VMware下载与安装

(略)

2、ubuntu-18.04.3下载地址:

http://mirrors.aliyun.com/ubuntu-releases/18.04/ubuntu-18.04.3-desktop-amd64.iso

下载后的文件为:ubuntu-18.04.3-desktop-amd64.iso

VMware创建虚拟机,并安装ubuntu-18.04.3的过程不多说,主要截图如下:

其它的配置均采用默认配置。

安装ubuntu-18.04.3时,创建了一个用户zdr 。

注意:并没有启用root用户,所以安装完毕后,用root用户是不能登录的。下面的操作均为安装完ubuntu-18.04.3后,没有进行其它的任务操作的情况下的过程。

下面的操作均为zdr用户登录ubuntu系统的操作。

二、用Visual Studio 2017创建.Net Core 2.2项目并发布项目。

创建.Net Core 2.2的项目DotNetCoreDemo1,过程比较简单,直接上图:

创建以后不做任何修改,直接运行,效果如下:

说明:此时,选择的是在IIS环境下ymya。如果要选择Docker环境,则本机不能安装Docker,否则会冲突。因为Visual Studio运行Docker调试时,会下载一个简易的Docker,会与原来安装的Docker冲突。

发布项目(全部采用默认的选择):

发布成功:

发布完成后的文件夹如下:

Web 应用已成功发布 E:/MyProgram/NetCore/DotNetCoreDemo1/DotNetCoreDemo1/bin/Release/netcoreapp2.2/publish/

至此 ,VMware、ubuntu已经安装完成,要部署的.Net Core 2.2项目也发布成功了,下面开始在ubuntu上部署刚才发布的项目。

三、在ubuntu-18.04.3上部署.Net Core 2.2运行环境

1、下载.Net Core 2.2 SDK Linux 安装包

以zdr用户(此时root用户还没有启动,不能用root用户登录呢。)登录刚安装好的ubuntu系统, 查看计算机的CPU类型和ubuntu的版本。

在ubuntu的控制台下查看Ubunutu的版本:
cat /etc/lsb-release
 查看是x86_64的CPU还是Arm的CPU:
Arch

运行结果如下 :

下载地址:

https://dotnet.microsoft.com/download/dotnet-core/2.2

可以Windows7系统下下载,也可以直接在刚安装好的ubuntu-18.04.3系统下下载。

ubuntu-18.04.3系统下载命令为:

下载后的文件名为:

dotnet-sdk-2.2.207-linux-x64.tar.gz

如下为在宿主Windows7下载的,下载完成后,将文件Copy到ubuntu系统/home/zdr/softbak目录下。如下图:

其中:

ls:列出目录下的文件

pwd:显示当前目录路径

dotnet-sdk-2.2.207-linux-x64.tar.gz所在的路径为:/home/zdr/softbak

2、创建 目录/usr/share/下dotnet以保存解压后的文件:

发现zdr用户没有权限,下面的操作先把share文件夹的操作权限给zdr用户。然后再创建share文件夹。

sudo  chmod  777 /usr/

mkdir dotnet

3、更新可提供安装的产品,然后安装.NET SDK

(1)更新系统

sudo apt-get install apt-transport-https

sudo apt-get update

(2)注册微软签名密钥和添加微软相关的支持。这个操作每台机器只能做一次。

wget -q https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb


sudo dpkg -i packages-microsoft-prod.deb

安装http支持:
sudo apt-get install apt-transport-https


sudo apt-get update


 

(3)解压dotnet-sdk-2.2.207-linux-x64.tar.gz文件

将/home/zdr/softbak/dotnet-sdk-2.2.207-linux-x64.tar.gz解压到/usr/share/dotnet/文件夹下。

在控制台下,进入dotnet-sdk-2.2.207-linux-x64.tar.gz所在的目录/home/zdr/softbak,执行解压命令,将文件解压到:/home/zdr/dotnet/目录下。

tar -zxvf dotnet-sdk-2.2.108-linux-x64.tar.gz -C /usr/share/dotnet(如果进入到softbak目录,则dotnet-sdk-2.2.207-linux-x64.tar.gz前可以不带完整的目录。)

tar zxf /home/zdr/softbak/dotnet-sdk-2.2.207-linux-x64.tar.gz -C /usr/share/dotnet(没有进入softbak目录时,dotnet-sdk-2.2.207-linux-x64.tar.gz前必须带目录)

解压后的文件夹/usr/share/dotnet/如下:

(4)、安装dotnet

安装的过程在buntu中其实就是建立一个软链接就可以了。

ln -s /usr/share/dotnet/dotnet  /usr/bin/dotnet

说明:

源:/usr/share/dotnet/dotnet 表示/usr/share/dotnet/目录下的dotnet文件,后面不能带/

目标:/usr/bin/dotnet表示/usr/bin/文件夹下面的dotnet文件。,后面不能带/

说明:由于我在/home/zdr/softbak/目录下放了2个.net Core的SDK,解压时,执行的是将2.2.108的版本解压了,所以此处显示的.net core版本是2.2.108

最后的dotnet --version用于验证.Net Core是否安装成功。

说明:网上说的这种方式设置的临时的,当你关闭terminal的时候就没有了。但我测试了一下,我并没有加到环境变量中,重启ubuntu后,执行dotnet --version仍是成功的。

 

 

 

 

四、部署刚才创建的.net 网站

1、 创建文件夹dotnetcoredemo1

在/home/zdr目录下,创建dotnetcoredemo1文件夹,

并将发布后的bin\Release\netcoreapp2.2\publish文件夹下的文件和目录全部Copy到dotnetcoredemo1文件夹下。COPY完成后的文件夹结构如下:

2、启动网站

dotnet DotNetCoreDemo1.dll

 

如果控制台的当前目录不是在DotNetCoreDemo1.dll所在的目录,可以执行带路径的启动命令:

dotnet /home/zdr/dotnetcoredemo1/DotNetCoreDemo1.dll

至此,在ubuntu 18.04下部署netcoreapp2.2网站成功。

目前部署的网站可以运行,但在关闭控制台后,刷新浏览器时,网站就不能打开了。这是因为启动网站的命令dotnet DotNetCoreDemo1.dll在关闭控制台后即失效 。

下面一篇Blog学习学习下配置supervisor守护网站以及Ngix的部署。

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xjzdr

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值