CentOS下配置node.js

昨天在阿里云上买了个CentOS的主机,想着在上面玩玩node.js.但是除了大学那会儿学过一点linux基本操作,知道有个pwd,ls操作,知道个vim,其他啥都不懂。当好不容易跟着阿里云的基础教程远程(在这里)连接上了云主机,进去看到黑漆漆的命令行界面顿时感觉到一股无力感袭来。还好阿里的基础教程做的还算详细,跟着教程配上图形界面,搭上ftp,将自己的一份blog的code上传了上去。啰里吧嗦了一堆,下面就是如何配置node.js了,并且安装blog中使用到的mongodb和redis.

1.安装git

git不是必须的,但是因为使用git比较多,所以就混杂在这里介绍了。

安装很简单,使用yum即可

yum install git-core

2.安装node.js

首先确保主机中安装了python(2.6或者2.7)和g++,这两个是依赖项,然后执行以下命令

git clone https://github.com/joyent/node.git
cd node
./configure
make
sudo make install

这样node就已经安装完成了,我们可以使用

node -v

来判断是否安装成功。

紧接着安装npm,npm时node的一个包管理

 git clone git://github.com/isaacs/npm.git
 cd npm
 make install # or `make link` for bleeding edge

  至此,就已经完成了node.js和npm的安装。更多请点击这里

3.安装mongodb

首先创建一个/etc/yum.repos.d/10gen.repo 文件,文件内容是

[10gen]
name=10gen Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64
gpgcheck=0
enabled=1

紧接着我们只需要使用yum在线安装即可

yum install mongo-10gen mongo-10gen-server

使用如下命令启动mongodb服务

service mongod start

4.安装Redis

首先使用如下脚本在线安装Redis

$wget http://redis.googlecode.com/files/redis-2.x.xx.tar.gz
$tar zxf redis-2.x.xx.tar.gz
$cd redis-2.x.xx
$make
$make install

下载配置文件和init启动脚本

wget https://github.com/ijonas/dotfiles/raw/master/etc/init.d/redis-server 
wget https://github.com/ijonas/dotfiles/raw/master/etc/redis.conf 
sudo mv redis-server /etc/init.d/redis-server 
sudo chmod +x /etc/init.d/redis-server 
sudo mv redis.conf /etc/redis.conf

以上的redis-server脚本不能在centos下执行,需要替换成以下内容

#!/bin/sh
#
# redis - this script starts and stops the redis-server daemon
#
# chkconfig:   - 85 15
# description:  Redis is a persistent key-value database
# processname: redis-server
# config:      /etc/redis.conf
# config:      /etc/sysconfig/redis
# pidfile:     /var/run/redis.pid

# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0

redis="/usr/local/bin/redis-server"
prog=$(basename $redis)

REDIS_CONF_FILE="/etc/redis.conf"

[ -f /etc/sysconfig/redis ] && . /etc/sysconfig/redis

lockfile=/var/lock/subsys/redis

start() {
    [ -x $redis ] || exit 5
    [ -f $REDIS_CONF_FILE ] || exit 6
    echo -n $"Starting $prog: "
    daemon $redis $REDIS_CONF_FILE
    retval=$?
    echo
    [ $retval -eq 0 ] && touch $lockfile
    return $retval
}

stop() {
    echo -n $"Stopping $prog: "
    killproc $prog -QUIT
    retval=$?
    echo
    [ $retval -eq 0 ] && rm -f $lockfile
    return $retval
}

restart() {
    stop
    start
}

reload() {
    echo -n $"Reloading $prog: "
    killproc $redis -HUP
    RETVAL=$?
    echo
}

force_reload() {
    restart
}

rh_status() {
    status $prog
}

rh_status_q() {
    rh_status >/dev/null 2>&1
}

case "$1" in
    start)
        rh_status_q && exit 0
        $1
        ;;
    stop)
        rh_status_q || exit 0
        $1
        ;;
    restart|configtest)
        $1
        ;;
    reload)
        rh_status_q || exit 7
        $1
        ;;
    force-reload)
        force_reload
        ;;
    status)
        rh_status
        ;;
    condrestart|try-restart)
        rh_status_q || exit 0
        ;;
    *)
        echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
        exit 2
esac

紧接着初始化用户和日志路径

sudo useradd redis 
sudo mkdir -p /var/lib/redis 
sudo mkdir -p /var/log/redis 
sudo chown redis.redis /var/lib/redis 
sudo chown redis.redis /var/log/redis

最后调用脚本,启动Redis

sudo /etc/init.d/redis-server start 
 
原文地址:https://www.cnblogs.com/barryli/p/3140512.html