头像
背景图片来自 夏の終わり
如有侵权,联系立删

centos中安装node.js、mongodb、nginx

2018-10-22 13:49:48

前几天买了个搬瓦工VPS,本意为了O墙。想着流量这么多,内存也够用,不如顺便建个博客站吧。眼看手头上的博客项目快要完成了,想着先把环境配置一下,然后在百度搜了些环境安装教程,然后发现这些教程都是坑,各种安装不上,不是这个依赖版本太低,就是那个依赖版本太低,安装体验太差!自己尝试了各种方法后,成功安装!现将安装过程记录下来,做一个备忘,也给大家提供一个参考!

安装node.js

本人是做前端开发的,对服务器知识仅限于大学时候还能记得的cd和ls命令了。因为项目需要,需要在几个不同版本的node中来回切换,在win上,我用了nvm来管理版本,来回都只要一个命令,很是方便。于是想着在cetos上有没有nvm啊,直接安装nvm,用nvm安装不就好了嘛!话不多说,打开gayhub就开撸。 搜索nvm,找到仓库,看readme,找到这样两段话:

To install or update nvm, you can use the install script using cURL:

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.4/install.sh|bash

or Wget:

wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.4/install.sh|bash

看下面那个比较顺眼,就下面这个命令好了,敲进终端,等待他跳完一堆提示,然后重启终端!输入

nvm --version
0.33.4

到这就完成了99%了,这时输入

nvm install v8.4.0

大功告成,查看版本:

node -v
v8.4.0
npm -v
5.3.0

更新: 据说这样安装可能会有权限问题,暂时没遇到,为了避免权限问题,还是推荐使用下面的方式安装......

1.下载node.js

curl -o node-v8.9.4-linux-x64.tar.xz https://nodejs.org/dist/v8.9.4/node-v8.9.4-linux-x64.tar.xz 

2.解压到指定目录

tar zxvf node-v8.9.4-linux-x64.tar.xz -C /usr/local

这里可能会有报错,无法解压xz文件,请使用yum下载yum install xz.x86_64 然后

xz -d node-v8.9.4-linux-x64.tar.xz
tar -xvf node-v8.9.4-linux-x64.tar -C /usr/local
cd /usr/local
mv node-v8.9.4-linux-x64/ /usr/local/node

3.测试

cd /usr/local/node/bin
./node -v

会输出当前node的版本 4.到这里还不行,node只在所在目录有效,所以需要链接

ln -s /usr/local/node/bin/node /usr/local/bin/node
ln -s /usr/local/node/bin/npm /usr/local/bin/npm

到此,就可以在任意目录使用node了

安装mongodb

安装mongodb有个很尴尬的地方

cat /proc/version
Linux version 4.10.4-1.el6.elrepo.i686 (mockbuild@Build64R6) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-17) (GCC) ) #1 SMP Sat Mar 18 11:05:18 EDT 2017

用的是搬瓦工默认安装的centos,第一次安装所有依赖都正常了,但就是启动不了mongod,这才发现这个centos竟然是32位的,尴尬的是mongodb官网找不到32位的包,为了找个3.0以上版本的包找死我了。最后用了个开发版的3.2版本的,将就着用吧,安装方式大同小异,这次主要是为了学习服务端知识,以后直接重新装个64位的系统好了,省的出各种各样的麻烦事。 这里建议采用源码编译安装的方式,看起来麻烦,实际操作起来其实很简单。 1.下载

curl -o mongodb-linux-x86_64-3.4.7.tgz https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.4.7.tgz

如果服务器下载慢,也可以本地下载好,再上传到服务器。 2.解压缩到安装目录

tar zxvf mongodb-linux-x86_64-3.4.7.tgz -C /usr/local
cd /usr/local
mv  mongodb-linux-x86_64-3.4.7/ /usr/local/mongodb

3.建立log和db文件夹

cd mongodb
mkdir data/log
mkdir data/db

4.在mongodb/bin下建立mongodb.conf 这里会用vi/vim可以直接在vi/vim中写,不会的可以再本地写好,再传到服务器该文件夹下即可。 以下配置项看注释,根据需要添加上就好。

# 日志文件位置
logpath=/usr/local/mongodb/data/log/log.log

# 以追加方式写入日志
logappend=true

# 是否以守护进程方式运行
fork = true

# 默认27017
#port = 27017

# 数据库文件位置
dbpath=/usr/local/mongodb/data/db

# 启用定期记录CPU利用率和 I/O 等待
#cpu = true

# 是否以安全认证方式运行,默认是不认证的非安全方式
#noauth = true
#auth = true

# 详细记录输出
#verbose = true

# Inspect all client data for validity on receipt (useful for
# developing drivers)用于开发驱动程序时验证客户端请求
#objcheck = true

# Enable db quota management
# 启用数据库配额管理
#quota = true
# 设置oplog记录等级
# Set oplogging level where n is
#   0=off (default)
#   1=W
#   2=R
#   3=both
#   7=W+some reads
#diaglog=0

# Diagnostic/debugging option 动态调试项
#nocursors = true

# Ignore query hints 忽略查询提示
#nohints = true
# 禁用http界面,默认为localhost:28017
#nohttpinterface = true

# 关闭服务器端脚本,这将极大的限制功能
# Turns off server-side scripting.  This will result in greatly limited
# functionality
#noscripting = true
# 关闭扫描表,任何查询将会是扫描失败
# Turns off table scans.  Any query that would do a table scan fails.
#notablescan = true
# 关闭数据文件预分配
# Disable data file preallocation.
#noprealloc = true
# 为新数据库指定.ns文件的大小,单位:MB
# Specify .ns file size for new databases.
# nssize = 

# Replication Options 复制选项
# in replicated mongo databases, specify the replica set name here
#replSet=setname
# maximum size in megabytes for replication operation log
#oplogSize=1024
# path to a key file storing authentication info for connections
# between replica set members
#指定存储身份验证信息的密钥文件的路径
#keyFile=/path/to/keyfile

5.启动mongodb的服务器

bin/mongod -f /usr/local/mongodb/bin/mongodb.conf

6.启动mongodb的客户端

bin/mongo

7.验证 在浏览器中输入

http://服务器的公网ip:27017

出现下面的文字就说明安装成功了

It looks like you are trying to access MongoDB over HTTP on the native driver port.

安装nginx

nginx官网下载Stable version的nginx。上传到服务器中。 这里上传到/usr/local/src 1.解压

tar zxvf nginx-1.12.2.tar.gz

2.直接安装以下库和模块

yum -y install gcc gcc-c++ autoconf automake make
yum -y install pcre-devel
yum -y install zlib-devel

然后

./configure
make
make install

出现报错信息不要着急,提示都是很详细的,缺啥补啥就好了 进入/usr/local/nginx/sbin目录,输入./nginx,并没与任何消息,根据unix的思想,没有消息就是好消息! 在浏览器中输入你的公网ip,看一下nginx朴素的欢迎界面吧! 下面记录几条常用nginx命令

nginx -s stop
nginx -s reload(每次修改配置,建议先使用 nginx -t 验证配置文件是否正确)
nginx -s quit

关于nginx的相关配置,后面考虑写一篇文章详细介绍一下。