服务器购买&配置
连接服务器1.git 连接 # ssh remote_username[@remote_ip](/user/remote_ip) 然后输入密码即可
如果ssh不存在,执行以下命令即可
# yum install openssh-client 下载客户端ssh 2.ftp 工具连接(这里以 FileZilla 为例),下载 filezilla 后,点击新建站点,输入主机 ip,选择 sftp 协议,选择登录类型为正常,输入账号密码即可 部署 node 环境1.部署 node 环境 # ssh remote_username[@remote_ip](/user/remote_ip) 连接服务器
# wget https:///dist/v6.9.5/node-v6.9.5-linux-x64.tar.xz 下载node压缩文件
# tar xvf node-v6.9.5-linux-x64.tar.xz 解压
# ln -s /root/node-v6.9.5-linux-x64/bin/node /usr/local/bin/node 创建软连接
# ln -s /root/node-v6.9.5-linux-x64/bin/npm /usr/local/bin/npm 创建软连接
# node -v 查看node版本
# npm -v 查看npm版本 2.其他 # yum install vim 下载vim nginx 安装&配置1.nginx 安装 # yum install epel-release 下载epel-release
# yun install nginx 下载nginx
# cd /etc/nginx
# vim nginx.conf 用vim打开nginx.conf 2.修改 nginx.conf
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
root /root/www/;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
location /admin/ {
# 为空即可,前端打包文件放在/root/www/admin里面就可访问到,注意默认是index.html
}
location /app/ {
}
location /wx/ {
proxy_pass http://127.0.0.1:7002/;
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
} 3.启动 nginx nginx -t 测试nginx语法是否有误
nginx 启动nginx
nginx -s reload 重启nginx,修改nginx.conf后记得重启 4.其他命令 ps -ef | grep nginx 显示nginx进程
nginx -s stop 停止nginx
nginx -v 查看nginx版本 部署 mongodb1.安装 mongodb # ssh remote_username[@remote_ip](/user/remote_ip) 连接服务器
# curl -O https://fastdl./linux/mongodb-linux-x86_64-3.0.6.tgz 下载
# tar -zxvf mongodb-linux-x86_64-3.0.6.tgz 解压
# mkdir data 创建数据库文件夹
# touch mongodb.log 创建日志文件
# cd /usr/local/mongodb/bin
# ./mongod -dbpath=/usr/local/mongodb/data -logpath=/usr/local/mongodb/mongodb.log -logappend -port=27017 -fork 注意fork是后台启动,避免又要再开窗口重新连接服务器再能进行其他操作
# ./mongo 连接mongodb 2.配置随 linux 启动 在/etc/rc.local 添加如下即可: # rm /usr/local/mongodb/data/mongod.lock 停止可能在运行的mongo
# /.../bin/mongod -dbpath /usr/local/mongodb/data -logpath /usr/local/mongodb/mongodb.log -logappend -fork -port 27017 3.设置权限 # cd /usr/local/mongodb/bin
# ./mongod -dbpath=/usr/local/mongodb/data -logpath=/usr/local/mongodb/mongodb.log -logappend -port=27017 -fork
# ./mongo
> use admin
> db.createUser(
> {
> user: "root",
> pwd: "123456",
> roles: [ { role: "root", db: "admin" } ]
> }
> )
> db.shutdownServer();
# ./mongod -dbpath=/usr/local/mongodb/data -logpath=/usr/local/mongodb/mongodb.log -logappend -port=27017 -fork --auth
# db.auth("root","123456") 4.项目中连接 mongodb(这里以 koa 框架 egg 项目为例,其他 node 请自行查找) # cnpm i egg-mongoose -S
// config/plugin.js
exports.mongoose = {
enable: true,
package: 'egg-mongoose',
}
// config/config.default.js
config.mongoose = {
url: 'mongodb://127.0.0.1/eggadmin',
options: {
// 如果设置了密码
// auth: { "authSource": "admin" },
// user: "root",
// pass: "123456",
}
} 部署 node 项目部署环境 阿里云 CentOS 7.2 64 位 1.本地项目根目录(删除 node_modules,建议依赖在服务器下载) # tar -zcvf ../file_name.tgz . 打包
# scp ../file_name.tgz remote_username[@remote_ip](/user/remote_ip):/root/www/server 上传到服务器 2.服务器 # ssh remote_username[@remote_ip](/user/remote_ip) 连接服务器
# cd /root/www
# mkdir server 这里创建server文件夹放node项目代码
# cd server
# tar -zxvf file_name.tgz . 解压
# cnpm install --production 安装生产环境依赖
1. koa项目(express项目类似)
# cnpm i -g pm2 下载pm2
# pm2 start bin/www 守护进程启动
# pm2 restart app_name|app_id 重启
# pm2 stop app_name|app_id 停止
# pm2 list 查看进程状态
# pm2 stop all 停止所有应用
# pm2 start ./bin/www --watch 监听更改自动重启
2. egg项目
# npm start 运行
# npm stop 停止 3.阿里 node 性能平台监控 1)koa 项目(express 项目类似) # wget -O- https://raw./aliyun-node/tnvm/master/install.sh | bash 安装版本管理工具 tnvm
# source ~/.bashrc
# tnvm ls-remote alinode 查看需要的版本
# tnvm install alinode-v3.11.4 安装需要的版本
# tnvm use alinode-v3.11. 使用需要的版本 新建 config.json 文件如下,从node 性能平台获取对应的接入参数 {
"appid": "<YOUR APPID>",
"secret": "<YOUR SECRET>"
} # cnpm install [@alicloud](/user/alicloud)/agenthub -g 安装 agenthub
# agenthub start config.json 启动agenthub
# agenthub list 查看 agenthub 列表
# ENABLE_NODE_LOG=YES pm2 start bin/www 使用pm2管理的应用 2)egg 项目 # cnpm i nodeinstall -g
# nodeinstall --install-alinode ^3
# cnpm i egg-alinode --save
# npm start // config/plugin.js
exports.alinode = {
enable: true,
package: 'egg-alinode',
};
// config/config.default.js
config.alinode = {
appid: '<YOUR_APPID>',
secret: '<YOUR_SECRET>',
}; 部署前端项目(这里以 vue 为例)在项目根目录npm run build,然后把 dist 文件夹里的内容传到服务器,这里我们把两个项目分部传到/root/www/app 和/root/www/admin,记得提前创建 app 和 admin 文件夹 |
|