先附上项目效果:
github: https://github.com/dsying/react-cNode
喜欢的话顺手个小星星吧✨✨✨
登录阿里云服务
通过ssh登录
ssh 用户名@IP
复制代码
登录云主机
通过 nvm 安装 node
# 安装git
yum install git
# 安装NVM
git clone https://github.com/creationix/nvm.git
# 激活NVM
echo ". ~/.nvm/nvm.sh" >> /etc/profile
source /etc/profile
# 查看NVM版本
nvm --version
# 列出Node.js的所有版本
nvm list-remote
# 安装指定版本
nvm install v6.9.5
nvm install v7.4.0
# 运行 nvm ls 查看已安装Node.js版本
nvm ls
# 使用指定版本
nvm use 10.15.1
复制代码
git生成ssh秘
# 执行命令在 .ssh 目录下生成一对秘钥
ssh-keygen
复制代码
拉取代码
git clone git@github.com:dsying/react-cNode.git
复制代码
你也可以通过 tar包的方式,然后sftp到云主,然后再解压缩的方式获取代码
安装pm2
npm install pm2 -g
# or
yarn add global pm2
复制代码
配置 pm2.yml 脚本
apps:
- script: ./server/server.js
name: cnode
env_production:
NODE_ENV: production
HOST: localhost
复制代码
进入项目根目录,执行 pm2.yml 脚本
pm2 start pm2.yml
复制代码
nginx配置
# 安装nginx
sudo yum install ngin
复制代码
# 进入nginx配置目录
cd /etc/nginx/conf.d/
# 创建配置文件
touch cnode.conf
复制代码
cnode.conf
server {
listen 80;
server_name 47.105.144.204;
location / {
root /home/dsying/projects/react-cNode;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-Nginx-Proxy true;
proxy_set_header Connection "";
proxy_pass http://127.0.0.1:3333;
}
}
复制代码
这段配置的意思是 把公网ip的80端口,映射到内网ip的 3333端口
重新加载nginx配置文件
nginx -s reload
复制代码
注意: 你开放的公网端口都要在阿里云控制台上开启。