【图文】用虚拟机做专属服务器

最近在学nodejs,不知道有没有人跟我有一样的困惑,每次学新东西配置实验环境都是个麻烦事(其实也没那么麻烦),主要是当自己的电脑装了一堆环境,一堆IDE后,总会变得臃肿不堪,而且经常遇到莫名其妙的问题,解决麻烦,还容易造成系统的不稳定。而且每换一台电脑,所有的东西需要重新配置。

所以我一直在想有一台专属的实验服务器就好了(可是对于学生来说还是贵啊),我可以在上面装我的专属实验环境,并且不用担心污染我的本地电脑,而且重装系统,或者在不同电脑上也能快速的恢复实验环境!

所以我就想能不能用虚拟机做一台专属的实验服务器,后来发现是可行的,并且装了server版的虚拟机基本不怎么吃资源。

这里介绍一下如何用虚拟机构建一台服务器,我是用的vmware,用virtualbox基本也差不多,除了端口映射那里不太一样

安装虚拟机

首先安装一个虚拟机,这里网上大量教材就不提供了,这里我是用的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终端软件,可以免费使用,下载地址:
http://www.netsarang.com/download/main.html

当然你也可以使用(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好很多,把它作为真实的实验环境是比较合适的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 162,050评论 4 370
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 68,538评论 1 306
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 111,673评论 0 254
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,622评论 0 218
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 53,047评论 3 295
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,974评论 1 224
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 32,129评论 2 317
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,893评论 0 209
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,654评论 1 250
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,828评论 2 254
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,297评论 1 265
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,619评论 3 262
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,326评论 3 243
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,176评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,975评论 0 201
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 36,118评论 2 285
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,909评论 2 278

推荐阅读更多精彩内容

  • feisky云计算、虚拟化与Linux技术笔记posts - 1014, comments - 298, trac...
    不排版阅读 3,757评论 0 5
  • (一)VMware下载 前面我们介绍了什么是VMware,接下来开始下载安装VMware虚拟机软件。VMware虚...
    Y先生的领地阅读 3,322评论 0 4
  • 端口:0 服务:Reserved 说明:通常用于分析操作系统。这一方法能够工作是因为在一些系统中“0”是无效端口,...
    萧玄辞阅读 1,117评论 0 2
  • 我们在前面完成了一个基本的服务程序,但是这个程序还有很多不足1、进程执行的时候占用当前shell并且当shell关...
    leo_liujinchun阅读 182评论 0 0
  • 随着现代科技越来越发达,几乎每个年轻人都成了社交平台的深度用户,习惯了你给我的自拍点赞、我给你的观点留言……有时候...
    不吾与阅读 179评论 0 0