共计 2801 个字符,预计需要花费 8 分钟才能阅读完成。
这里介绍一下如何用虚拟机构建一台服务器,我是用的 VMware,用 VirtualBox 基本也差不多,除了端口映射那里不太一样。因为每次学新东西配置实验环境都是个麻烦事(其实也没那么麻烦),主要是当自己的电脑装了一堆环境,一堆 IDE 后,总会变得臃肿不堪,而且经常遇到莫名其妙的问题,解决麻烦,还容易造成系统的不稳定。而且每换一台电脑,所有的东西需要重新配置。
所以我一直在想有一台专属的实验服务器就好了 (可是对于学生来说还是贵啊),我可以在上面装我的专属实验环境,并且 不用担心污染我的本地电脑,而且重装系统,或者在不同电脑上也能快速的恢复实验环境!
所以我就想能不能用 虚拟机
做一台专属的实验服务器,后来发现是可行的,并且装了 server 版的虚拟机基本不怎么吃资源。
安装 VMware 虚拟机
首先安装一个虚拟机,这里网上大量教材就不提供了,可以看看 Linux 公社的的相关位置,这里我是用的 Ubuntu-server,注意安装的时候,最后选择安装包的时候,把 openssh 带上。或者安装完后通过命令安装
sudo apt-get install openssh-server
安装完通过查看,如果有 sshd
说明安装成功
配置网络
这里我采用的 NAT
模式,该模式的好处是不用管外界 ip 地址的变化(比如说办公环境经常变换,ip 地址也经常变换),内部 ip 部会改变,这样可以免去频繁修改 host 文件的烦恼。
我这里使用的 vmware,把 22 号端口暴露出去(可以在公网中访问)
编辑 - 虚拟网络编辑器
点击【NAT 设置】-【添加】,这里输入端口号 22,然后虚拟机的 ip 地址(进入虚拟机通过 ipconfig 获得),我这里是192.168.91.133
填完之后确定,我们虚拟机就配置完了
VirtualBOX
对于 Virtualbox 来说其实更简单,直接点击端口转发就行了
配置 host
这里,为了访问虚拟机方便,或者避免虚拟机 ip 地址变化导致程序需要做大量修改配置文件。
我们可以直接在 host 中做一个映射。一般在 C:\Windows\System32\drivers\etc
目录下,用记事本,gvim 等可以打开。增加一行是虚拟机的 ip 地址。
配置 xshell
xshell 是 windows 端功能强大的 ssh 终端软件,可以免费使用。
Xshell 实现 Windows 上传文件到 Linux 主机 http://www.linuxidc.com/Linux/2015-05/117975.htm
Xshell 登录 CentOS 6.3 中文乱码的解决 http://www.linuxidc.com/Linux/2013-06/86600.htm
VirtualBox4.12 文本安装 CentOS 5.4 以及 Xshell 连接教程 PDF http://www.linuxidc.com/Linux/2013-06/85575.htm
Xshell 连接 CentOS6.5 iptables 或 ls 输出乱码 http://www.linuxidc.com/Linux/2014-06/103725.htm
VMware Linux 使用 Xshell 登陆 http://www.linuxidc.com/Linux/2012-06/62546.htm
使用 Xshell 密钥认证机制远程登录 Linux http://www.linuxidc.com/Linux/2015-03/114947.htm
当然你也可以使用(Putty、SecureCRT)根据自己的需要
输入主机的 ip 地址:
然后可以修改一下外观,改变一下字体什么的,然后按确定,再在弹出的对话框点【连接】
会让你输入用户名和密码,你可以选择记住密码
然后就可以连接上了
我们测试一下通过输入本地主机的 ip 地址:
发现也是能连接上的,说明端口被暴露出来了
服务器后台运行
是不是每次都要打开电脑,然后留一个 VM 程序在任务栏惹人厌呢?当然不是,我们可以让它后台运行。接下来,我们可以把我们的虚拟机(服务器)后台运行了
编辑——首选项,选中关闭后保持虚拟机运行
光这样还不够,还要在 服务
中把 VMware Authorization Service
打开,就可以把虚拟机后台运行了。
把 VMware Authorization Service
打开,就可以把虚拟机后台运行了。
在 vmware 把虚拟机打开时候,关闭就行了,然后它就跑后台运行了,我们就可以随时通过远程工具比如(xshell)访问了
可以发现服务器开了在后台基本不怎么耗费资源,可能也是 server 版本的原因,这样就可以放心的在后台开启服务器了。
有人问为什么不直接在虚拟机中运行指令,而非要弄一个 xshell 远程登录,这个嘛,主要是~ 装逼~,当然不是拉,一来,我 xshell 软件可以显示风格,二来和真实工作情况相似,三来 xshell 提供了很多功能,加上配合 xftp 传输文件,非常方便。
配置环境
我这里主要使用 node,所以安装了一些 node 开发工具(node npm MongoDB Redis……)
sublime sftp 连接到服务器
在 sublime 中,通过 sftp 插件可以快速的把工程同步到服务器上,简直不要太方便
安装也很简单:
ctrl + shift + p
install
sftp
使用的时候,对需要同步的目录或文件,点击右键【SFTP】,配置一下,主要是下面几个地方要配置一下,把upload_on_save
打开可以在每次保存的时候,自动同步(根据需要开关),然后配置一下 host,用户名,密码,端口号,还有同步到的目录(事先创建)
然后我们保存,点击右键——【SFTP】——Upload File
然后我们通过 xshell 打开服务器,可以看到正常同步过来了
然后,只要我们代码修改保存,这里就会自动同步更新
我们写了一小程序,在服务器的 8011 端口跑
var http = require('http')
http.createServer(function (req,res) {
// body...
res.end('hello');
}).listen(8011);
console.log('listen 8011');
我们在服务器端运行一下:
然后我们在本地跑一下:输入 http://myserver:8011(还记得我们之前配置了 hosts 文件吗),可以看到程序正常运行了。
最后
然后,你就可以在服务器上做任何你想做的事情了,而且配置好的环境,你可以压缩包保存一份,然后上传到百度云上(我装完环境的才 2g,压缩完 700m),以后不管在什么地方,只要装上虚拟机,所有环境就有了,不要重新配置,方便吧!
你还可以多配几个不同的实验环境,而不用担心污染你的本地电脑。而且 Linux 的 bash 在实际工作中效率要比 Windows 好很多,把它作为真实的实验环境是比较合适的。
本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-01/139530.htm