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

所属分类: 网络编程 / JavaScript 阅读数: 385
收藏 0 赞 0 分享

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

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

  1. VMware 下载
  2. linux
  3. nodejs
  4. xshell

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

首先安装 VMware

1. 下载 VMware

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

2. 安装 VMware

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

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


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


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


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


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

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


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


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

其次安装 linux

1. 下载 linux

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

下载地址:https://www.jb51.net/softs/188482.html

2. 安装 linux

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


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

 


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



d. 老规矩 C->D


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


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


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


h. 使用 xshell 链接 linux


a) 安装 xshell 实在是没有难度这里就不说了, 首先我们拿到虚拟机的 ip

点击 linux 按钮 -> 在密码框输入我们安装虚拟机是设置的密码 -> 完成基本设置后 -> 即可进入

liunx 桌面 -> 右击 -> open in terminal 即可打开 liunx 控制台 输入 ifconfig 指令 回车


b) 打开 xshell 使用 alt + n 快捷键


主机名字地方输入前一步获取的 ip




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


1、进入安装目录

 cd /usr/local/

2、上传 nodejs 安装包

rz -> 选择已经下载的 node 安装包文件


3、解压 nodejs 安装包

 xz -d node-v8.1.2-linux-x64.tar.xz
 tar -xvf node-v8.1.2-linux-x64.tar

4、改名

 mv node-v8.1.2-linux-x64 node

5、添加环境变量

 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
 万事大吉 撒花.....

6、创建 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服务

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

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

百度了半天发现原来是应为虚拟机开启了防火墙, 所以物理主机没法访问到. 执行以下两个指令即可.

systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动

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


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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

浅谈Koa2框架利用CORS完成跨域ajax请求

这篇文章主要介绍了浅谈Koa2框架利用CORS完成跨域ajax请求,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

浅析Vue中method与computed的区别

在new Vue的配置参数中的computed和methods都可以处理大量的逻辑代码,但是什么时候用哪个属性,要好好区分一下才能做到正确的运用vue。这篇文章主要介绍了Vue中method与computed的区别,需要的朋友可以参考下
收藏 0 赞 0 分享

Vue2.0 http请求以及loading展示实例

下面小编就为大家分享一篇Vue2.0 http请求以及loading展示实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

轻松搞定jQuery+JSONP跨域请求的解决方案

了解了jsonp之后,大家应该也都明白了,jsonp主要就是用来实现跨域的获取数据,今天我们就来详细探讨下如何在实际中应用jsonp实现跨域
收藏 0 赞 0 分享

Vue2.0实现组件数据的双向绑定问题

这篇文章主要介绍了Vue2.0实现组件数据的双向绑定问题,非常不错,具有参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

node的process以及child_process模块学习笔记

这篇文章主要介绍了node的process以及child_process模块学习笔记,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

vue2.0 循环遍历加载不同图片的方法

下面小编就为大家分享一篇vue2.0 循环遍历加载不同图片的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

浅谈Vue2.0中v-for迭代语法的变化(key、index)

下面小编就为大家分享一篇浅谈Vue2.0中v-for迭代语法的变化(key、index),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

使用vue-aplayer插件时出现的问题的解决

这篇文章主要介绍了使用vue-aplayer插件时出现的问题的解决,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Element-ui table中过滤条件变更表格内容的方法

下面小编就为大家分享一篇Element-ui table中过滤条件变更表格内容的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享
查看更多