把Web Api OData移植到Asp.Net Core(2)- 准备Linux环境

Asp.Net Core网站可以通过在宿主机Linux中安装Net Core SDK的方法去运行,但是最好的方法还是采用docker去部署。用过docker部署之后,再也不想安装SDK了,用户体验的差距就像功能手机和智能手机那么大!

Docker不仅是一个部署网站的工具,更是一种云服务器系统的组织架构体系。从docker这个点出发,可以看到一个庞大的云计算帝国,里面有K8S,微服务,Api网关等等重量级角色。整个体系涉及的知识面非常广,也非常深,一时半会也啃不完,所以第一步先集中精力,把docker作为一个部署工具用起来。

准备工作:通过VMWare在Win10上安装Linux虚拟机。

1. 安装CentOS操作系统

CentOS是Linux众多发行版本之一,常用于服务器操作系统。CentOS官网:
https://wiki.centos.org/zh/Download
1611版本下载地址:
http://vault.centos.org/7.3.1611/isos/x86_64/CentOS-7-x86_64-DVD-1611.iso

打开VMWare,添加虚拟机。选择下载的iso文件,将虚拟磁盘存储为单个文件,其他按照默认值就好了。
重启虚拟机后,开始安装CentOS系统。选择英文。
进入安装设置页面。
把Web Api OData移植到Asp.Net Core(2)- 准备Linux环境

设置SOFTWARE SELECTION,选择Basic Web Server,点击Done按钮完成。
把Web Api OData移植到Asp.Net Core(2)- 准备Linux环境

设置INSTALLATION DESTINATION,什么都不用改,点击Done按钮完成。
把Web Api OData移植到Asp.Net Core(2)- 准备Linux环境

设置NETWORK & HOST NAME,把【Ethernet(ens33)】打开,系统会自动获取IP,点击Done按钮完成。记住这个IP,以后要通过SSH工具远程连接这个IP操作Linux。
把Web Api OData移植到Asp.Net Core(2)- 准备Linux环境

完成设置后,点击Begin Installation按钮开始安装。
把Web Api OData移植到Asp.Net Core(2)- 准备Linux环境

安装过程中,设置root密码。再创建一个普通用户。
把Web Api OData移植到Asp.Net Core(2)- 准备Linux环境

安装完系统,先在VMWare保存一个快照,如果把系统折腾坏了,恢复快照即可,非常方便。

2. 使用SSH工具远程操作CentOS

Linux服务器一般是字符界面,打字输入命令非常痛苦,容易犯错,效率低下,必须借助图形化的远程管理工具,才能高效地完成后续安装工作。

SSH工具是一类用于远程管理Linux的Windows窗口软件,有很多,如Putty、XShell、SecureCRT等等。我使用的是SSH Secure Shell Client,百度可以找到很多安装包,如:
http://rj.baidu.com/soft/detail/17152.html

在Windows中安装SSH工具,生成2个快捷方式,一般常用SSH Secure File Transfer Client,首次运行可能会报错,无需理会。

在使用SSH工具连接VMWare的CentOS虚拟机之前,先测试能否ping通。

打开SSH Secure File Transfer Client,输入虚拟机IP,用root帐号登录。
把Web Api OData移植到Asp.Net Core(2)- 准备Linux环境

首次访问IP提示保存,回答Yes。
把Web Api OData移植到Asp.Net Core(2)- 准备Linux环境

然后输入密码。登录成功后,SSH工具提示Add Profile,可以按帐号名和IP的方式起名,以后登录可以直接选择Profile里的root134菜单。
把Web Api OData移植到Asp.Net Core(2)- 准备Linux环境

如果跟CentOS断开了连接,例如重启虚拟机,等重启完成后,可以点击Connect图标再次连接。
把Web Api OData移植到Asp.Net Core(2)- 准备Linux环境

点击New Terminal Window图标,可以打开文字终端。
把Web Api OData移植到Asp.Net Core(2)- 准备Linux环境

在文字终端,可以粘贴命令,非常方便。
注意:一些命令包含2个连续的减号,多次复制粘贴之后,会合并为一个长减号,所以粘贴命令后必须目测检查一遍,再执行。
注意:Linux文件名和目录名区分大小写!
把Web Api OData移植到Asp.Net Core(2)- 准备Linux环境

SSH工具主界面可以同时看到Windows系统和CentOS系统的文件系统,在两个系统之间复制文件,非常方便。
把Web Api OData移植到Asp.Net Core(2)- 准备Linux环境