环境配置
配置云主机
购买云主机,选择ubuntu系统,通过管理终端连接服务器,通过root用户登录。
用adduser命令新建一个用户,以后通过ssh连接时使用这个用户名。
把用户添加到sudo 用户组,给用户执行sudo级别命令的权限。
sudo adduser <username> sudo
通过ssh连接到远程主机。
ssh username@host
Node.js安装及配置
安装nvm
先从ubuntu的代码库里安装构建工具包必须的软件包:
sudo apt-get update
sudo apt-get install build-essential libssl-dev
到nvm项目主页上找到安装命令(ubutun下用wget):
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.31.1/install.sh | bash
为了在不退出的前提下使用nvm,还要重新编译一下自己的profile:
source ~/.profile
执行nvm ls-remote
,检查安装是否成功。
安装Node.js
用nvm安装node.js
nvm i 5.11.1
查看Node所在的目录:
which node
为了让node应用在80端口下执行,需要把nvm中node用下面的命令复制到/usr/local/bin下面:
n=$(which node);n=${n%/bin/node}; chmod -R 755 $n/bin/*; sudo cp -r $n/{bin,lib,share} /usr/local
连接云服务器管理终端,执行which node
,应该看到:
/usr/local/bin/node
以后要启用新的node,还要再次执行这一步骤。
允许Node使用80端口
在Linux上,1024以下的端口只能开放给root使用,为了允许新建的用户在80端口下启动node应用,可以执行下面两条命令:
sudo apt-get install libcap2-bin
sudo setcap cap_net_bind_service=+ep /usr/local/bin/node
设置环境变量,以便Node.js应用可以用这个环境变量指定的端口:
export PORT = 80
安装PM2
PM2是Node.js应用的进程管理器,自带负载均衡。将pm2安装在全局环境下:
npm i -g pm2
安装Mongodb
导入公钥
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
给mongodb创建一个list文件
echo "deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list
重载本地包数据库
sudo apt-get update
安装Mongodb
sudo apt-get install -y mongodb-org
启动mongodb
sudo service mongod start
创建Git裸库
安装git
sudo apt-get install git
创建git用户并添加.ssh目录
$ sudo adduser git $ su git $ cd $ mkdir .ssh && chmod 700 .ssh $ touch .ssh/authorized_keys && chmod 600 .ssh/authorized_keys
- 将用户的公钥添加到文件authorized_keys中
创建裸仓库
mkdir weixin.git cd weixin.git git --bare init
创建工作目录
git clone ./weixin.git ./weixin
首次提交
echo "Weixin API Server" > README.md git add . git config --local user.name username git config --local user.email [email protected] git commit -m "Add README.md" git push origin master
clone到本地
git clone username@host:/path/to/weixin.git