手把手教你把 nodejs 部署到 linux 上跑出 hello world

从事前端一年多了对于 linux 服务部署一直是一无所知, 直到前段时间萌发了个想法, 我怎么能像运维同学一样把自己的代码放到一个 linux 的服务器上. 于是便开始了踩坑之旅, 这里顺便记录下.

ps: 本文中需要下载的文件包括:

  1. VMware 下载
  2. linux 需要迅雷
  3. nodejs
  4. xshell

文件较大, 大家在上车动手之前可以先准备好下载文件在搞起来. 反正我是打了好几局 LOL 才下载完的.

首先安装 VMware

1. 下载 VMware

因为我们没有在 linux 上编程的必要(除非你是个大牛 || 装逼达人), 所以我们选择了在虚拟机上安装 linux, 当前主流的虚拟机平台有 VMware 和 virtualbox, 前者付费, 后者为免费版. 大家可随意安装, 我们这里使用 VMware , 这里放下链接 VMware下载

2. 安装 VMware

双击下载的安装包文件, 开始安装 ...

a. 对于有强迫症的我这种界面直接下一步的, 老铁没毛病 -

开始安装界面

b. 这里你要是不同意就然后就没哟然后了 v_v


同意协议界面, 必须的同意

c. 这里到了勾重点的时候, 对于一些有洁癖的程序员不愿意把应用软件安装到自己的 c 盘, 需要点击这个界面的更改按钮


选择安装位置

d. 不知道你有没有神奇的操作, 作为懒人, 我只是直接把 C 替换成了 D


这里把c改成d

e. 然后就是疯狂的下一步 --> 最后点一下安装, 电脑就开始干活儿啦


电脑在疯狂的安装着

f. 安装完成, 弹出以下界面, 这里我们点击许可证按钮(这里强烈推荐大家购买正版)


安装完成界面

g. 进入许可页面输入界面后我不知不觉的想到了度娘, 在此, 我再次强烈建议大家使用正版软件.

许可证验证界面

h. 在最后的完成页面点击完成, 至此 VMware 安装完成

其次安装 linux

1. 下载 linux

关于 linux 诞生的神话这里就不赘述了, 我们直接上截图, 上步奏.

a. 本示例中的 linux 系统选自 系统之家 cent OS 7.2 需要迅雷. 大家可以下载自己喜欢的 linux 版本

2. 安装 linux

a. 双击桌面上的 VMware 按钮打开, 点击巨大的 "新建虚拟机" 按钮

新建虚拟机

b. 选择典型, 点击下一步, 在这个页面如果系统没哟匹配到你下载的 linux 安装包, 需要手动选择下


选择系统安装包

c. 在这里你需要给你的 虚拟机起一个名字


虚拟机设置

这里要记住自己的密码

d. 老规矩 C->D


把C盘替换成D盘

e. 这些东西不怎么会, 直接下一步, 完成 虚拟机配置完成.


不会

f. VMware 的好处在于, 到目前为止, 我们什么都不用干了, 你可以撩撩妹子, 打局 LOL. 因为剩下的活儿, VMware 都帮我们干了.

辛苦的忙碌着

g. 安装完成后进入了我们憧憬的 linux 界面, 没有想象的那么糟糕 -

liunx 系统界面

h. 使用 xshell 链接 linux

这里的语言推荐中文

a) 安装 xshell 实在是没有难度这里就不说了, 首先我们拿到虚拟机的 ip
点击 linux 按钮 -> 在密码框输入我们安装虚拟机是设置的密码 -> 完成基本设置后 -> 即可进入
liunx 桌面 -> 右击 -> open in terminal 即可打开 liunx 控制台 输入 ifconfig 指令 回车
ip

b) 打开 xshell 使用 alt + n 快捷键
主机名字地方输入前一步获取的 ip

点击接受并保存
输入我的用户名, 这里用root

输入我的密码

c) 在xshell 中输入 ifconfig 输出的内容同在虚拟机中输出一直, xshell 链接成功

xshell 链接成功

最后安装 nodejs

  1. 进入安装目录

     cd /usr/local/  
    
  2. 上传 nodejs 安装包

     rz -> 选择已经下载的 node 安装包文件
    
选择上传的文件
  1. 解压 nodejs 安装包

      xz -d node-v8.1.2-linux-x64.tar.xz
      tar -xvf node-v8.1.2-linux-x64.tar
    
  2. 改名

      mv node-v8.1.2-linux-x64 node
    
  3. 添加环境变量

     vim  /etc/profile   -> 并在文件的末尾添加三行 (vim 操作请自行百度)
     export NODE_HOME=/usr/local/node
     export PATH=$PATH:$NODE_HOME/bin
     export NODE_PATH=$NODE_HOME/lib/node_modules
     配置完成后执行 
     source /etc/profile
     在命令行中输入 node -v 是不是好使了  ^-^
     为了保证每个账户下该配置均可用需要
     vim /root/.bashrc
     并在这个文件的末尾加上
     source etc/profile
     万事大吉 撒花.....
    
  4. 创建 hello world 程序
    mkdir -p /usr/local/demo/
    vim /usr/local/demo/helloworld.js
    在 helloworld.js 文件中输入以下内容
    var http = require('http');
    http.createServer(function(req, res) {
    res.end('hello world...')
    }).listen(8080);
    console.log('服务已启动, 监听端口8080......')
    此时我们就可以通过虚拟机本机访问到服务啦

通过虚拟机访问node服务

但是在物理主机中并不能访问

这是为什么呢???
  1. 关闭防火墙

百度了半天发现原来是应为虚拟机开启了防火墙, 所以物理主机没法访问到. 执行以下两个指令即可.
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动

打开浏览器访问 http://192.168.79.128:8080/


访问成功啦

well done

本文记录了我的 nodejs 初始踩坑之旅, 希望可以帮助新手同学, 同时希望大神能够不吝赐教.

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

推荐阅读更多精彩内容

  • 一. 安装配置Node.js Node.js官网上 http://nodejs.cn/download/ 下载安装...
    淡就加点盐阅读 17,646评论 1 10
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,633评论 18 139
  • bingo_阅读 893评论 5 7
  • 回青岛也一年多了,共享单车也慢慢在这个城市多了起来,但我始终没有尝试使用,青岛是一个不适合骑单车的城市,没有非机动...
    于小书阅读 289评论 0 0
  • 第一次正式开发一个小程序,就从以下几个方面来谈一谈小程序的开发过程和心得吧,主要说说这次项目中用到的功能。 数据请...
    Modigliani阅读 2,410评论 0 6