centos一步步完成站点部署
# 部署环境依赖
- node安装
- git安装
- nginx安装与配置
- redis安装
# node安装
yum install -y wget
wget https://nodejs.org/dist/v12.14.0/node-v12.14.0-linux-x64.tar.xz
tar -xvf (https://nodejs.org/dist/v12.14.0/node-v12.14.0-linux-x64.tar.xz)
软连接(/data/tool:当前下载保存目录)
sudo ln -s /data/tool/nodejs/bin/node /usr/local/bin/node
sudo ln -s /data/tool/nodejs/bin/npm /usr/local/bin/npm
// 可以使用sudo npm
sudo ln -s /usr/local/bin/node /usr/bin/node
sudo ln -s /usr/local/lib/node /usr/lib/node
sudo ln -s /usr/local/bin/npm /usr/bin/npm
sudo ln -s /usr/local/bin/node-waf /usr/bin/node-waf
- 更新 profile
export NODE_HOME=/data/tool/nodejs/bin
export PATH=$NODE_HOME:$PATH
source /etc/profile
- 验证
node -v - 设置淘宝代理(视需求)
npm install -g cnpm --registry=https://registry.npm.taobao.org
# nginx安装
- wget http://nginx.org/download/nginx-1.12.2.tar.gz
- tar -zxvf nginx-1.12.2.tar.gz
- 安装依赖库
# yum install gcc-c++
# yum install pcre
# yum install pcre-devel
# yum install zlib
# yum install zlib-devel
# yum install openssl
# yum install openssl-devel
# mv nginx-1.12.2 nginx
# cd nginx
# ./configure
# make
# make install
- 配置开机启动
- vim /usr/lib/systemd/system/nginx.service
[Unit]
Description=nginx - high performance web server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
[Install]
WantedBy=multi-user.target
systemctl start nginx.service
chmod 754 nginx.service
systemctl enable nginx.service
systemctl start nginx.service
systemctl disable nginx.service
systemctl status nginx.service
systemctl restart nginx.service
systemctl list-units --type=service
service nginx stop
service nginx start
service nginx restart
# git 安装
# sudo yum install -y git
# git config --global user.name "Your Name"
# git config --global user.email "email@example.com"
# ssh-keygen -t rsa -C "youremail@example.com"
# 配置nginx
- nginx.conf中加入 include这段
include /usr/local/nginx/conf/conf.d/*.conf;
http{
.....
include /usr/local/nginx/conf/conf.d/*.conf;
server{
....
}
}
- 配置子配置文件 xx.xx.cn.conf(方便配置)
- 开启https,需要申请证书(阿里云和腾讯云都有10个免费证书)
server {
listen 80;
server_name xx.xx.cn
root /var/www/html;
location ~ \.txt$ {
root /var/www/txt;
}
location / {
proxy_pass http://xxx.xxx.xxx.xxx:11000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location /api/ {
proxy_pass http://xxx.xxx.xxx.xxx:11000/api/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
server {
listen 443;
server_name xx.xx.cn;
ssl on;
root /var/www/html;
ssl_certificate /etc/nginx/xxx.pem;
ssl_certificate_key /etc/nginx/xxx.key;
ssl_session_timeout 10m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
location ~ \.txt$ {
root /var/www/txt;
}
location / {
proxy_pass http://xxx.xxx.xxx.xxx:11000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location /api/ {
proxy_pass http://xxx.xxx.xxx.xxx:11000/api/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
# 安装pm2
npm i pm2 -g
- 常用命令:
- pm2 start xxx.js --name test
- pm2 stop test
- pm2 restart test
# 安装redis
- wget http://download.redis.io/releases/redis-4.0.6.tar.gz
- tar -zxvf redis-4.0.6.tar.gz
- mv redis-4.0.6 redis
- make MALLOC=libc
- cd src && make install
# 开机启动
- cd /etc mkdir redis
- cp /usr/local/redis/redis.conf /etc/redis/6379.conf
- cp /usr/local/redis/utils/redis_init_script /etc/init.d/redisd
- vim redisd 顶部添加2行
# chkconfig: 2345 90 10
# description: Redis is a persistent key-value database
- chkconfig redisd on
- service redisd start service redisd stop
# 查看
redis-cli进入redis- auth password
- keys * 查看所有
# redis安装教程 (opens new window)
# 启动服务
- 在指定目录下载工程(如github,gitlab),安装依赖包
- 使用pm2 启动工程,访问http://xxx.xxx.xxx.xxx:11000(根据项目定)
# 安装puppeteer
直接装l puppeteer包后, 运行还是会报错, 需要先自己装一个迷你版chrome,就不会报错了
yum install chromium
# 安装rzsz
yum -y install lrzsz
- 上传文件,执行命令rz
- 下载文件,执行命令sz
上次更新: 2021/12/19, 18:05:42