1.首先创建一个用户然后给管理员权限,因为超级管理员root,权限最高,操作有风险
登录云服务器
1)远程主机添加用户
adduser web
2)配置文件给权限
打开编辑文件
sudo vim /etc/sudoers
按i编辑,然后复制下面代码,按esc,按住shift+:,然后输入wq,保存并退出
web ALL=(ALL:ALL) ALL
2.本地和服务器建立连接
1)鼠标右键打开Git Bash here
2)进入ssh文件夹
`cd ~/.ssh/`
3)复制密钥
ssh-copy-id -i ~/ssh/id_rsa.pub web@你的服务器公网地址
4)远程登录服务器
ssh web@你的公网IP
5)更新软件包和安装nodejs
安装之前,先更新一波服务器上所有软件包信息
sudo apt-get update
然后安装nodejs
sudo apt-get install nodejs -y
6)安装npm
sudo apt-get install npm -y
7)安装插件n(nodejs管理插件)
因为服务器直接安装的node和npm版本较低,所有需要更新
sudo npm install n -g
然后更新最新的nodejs
sudo n latest
然后exit
退出一下,在登录,nodejs就是最新版本了
**3.**如果只是部署项目的话,这就配置完毕了,上线接口的话,还需要安装pm2,让nodejs一直运行,数据库的话,看个人需要,安装什么样的数据库
4.项目上线
连接远程服务器,然后进入ssh目录,参考上面流程
生成密钥
ssh-keygen -t rsa
打开密钥
cat ~/.ssh/id_rsa.pub
5.复制密钥到git仓库
上面出来的一串密钥,复制,然后进入GitHub
打开setting,如下图
然后打开ssh
然后右边点击添加新的密钥,把刚才的代码复制过去
6.进入dos,创建个文件夹,然后放你的项目
git clone 你的远程库项目地址
cd 进入你的目录,然后npm i安装依赖项
npm run build
生成dist文件夹
7.配置端口
1)进入配置环境
cd /etc/nginx
2)进入 nginx.conf,改文件名字
sudo vim nginx.conf
user 改为你创建的用户名字,然后esc,按住shift+冒号,输入wq,保存并退出
3)进入 conf.d
cd conf.d
4)创建并配置你的conf文件
sudo touch mysite.conf
sudo vim mysite.conf
server {
listen 8090;#端口号,按自己喜好
root "~/websites/";#改为你dist文件夹的绝对路径,比如:/home/web/websites/mysite/dist/
location / {
# root html;
index index.html index.htm; # 默认加载的文件名
}
}
8.重新启动下nginx
sudo nginx -s reload