麻麻说标题长才有人看~
这篇算是流水账的笔记,但也希望可以帮助到搜索到这篇文章的各位。
1 安装 NodeJS、PM2
进入官网 https://nodejs.org/en/download/ 复制Linux Binaries (x64)下载链接
cd /usr/local/src wget https://nodejs.org/dist/v14.16.1/node-v14.16.1-linux-x64.tar.xz tar -xvf node-v14.16.1-linux-x64.tar.xz mv node-v14.16.1-linux-x64/ node cd node
通过创建软链接的方法,使得在任意目录下都可以直接使用node和npm命令:
ln -s /usr/local/src/node/bin/node /usr/local/bin/node ln -s /usr/local/src/node/bin/npm /usr/local/bin/npm node -v
查看node版本检测是否安装成功。
全局安装 yarn、pm2,用相同方式创建软链接
npm i yarn -g npm i pm2 -g
2 安装 MongoDB
安装依赖:
apt-get install libcurl4 openssl liblzma5
官网 https://www.mongodb.com/try/download/enterprise
选择对应的版本、系统,选择tgz格式,再点击 Copy Link 复制链接
cd /usr/local/src wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu1804-4.4.5.tgz tar -zxvf mongodb-linux-x86_64-ubuntu1804-4.4.5.tgz cd mongodb-linux-x86_64-ubuntu1804-4.4.5.tgz
可以像前面一样创建软链接或者复制文件到bin实现全局
cp mongodb-linux-x86_64-ubuntu1804-4.4.5/bin/* /usr/local/bin/
创建储存MongoDB数据和日志的文件夹
mkdir -p /var/lib/mongo mkdir -p /var/log/mongodb
--fork会以守护进程的方式运行 MongoDB
默认端口为27017,可使用--port更改
默认只允许所有本地连接,可使用 --bind_ip
修改
可使用ps aux | grep mongod 查看进程,使用kill -9 xxx结束进程
运行 MongoDB:
mongod --dbpath /var/lib/mongo --logpath /var/log/mongodb/mongod.log --fork
2.1 创建用户
userAdminAnyDatabase:授予在所有数据库上管理User的权限
root:所有权限
mongo > use admin switched to db admin > db.createUser({user:"admin", pwd:"password",roles:[{ role: "userAdminAnyDatabase", db: "admin" }]}) > db.createUser({user:"admin",pwd:"password",roles:["root"]})
新建名为 vok_blog 的库,添加数据库用户
dbOwner:在当前DB中执行任意操作
> use vok_blog switched to db vok_blog > db.createUser({user:"admin", pwd:"password",roles:[{ role: "dbOwner", db: "vok_blog" }]})
权限说明
数据库用户角色(Database User Roles)
read:授予User只读数据的权限
readWrite:授予User读写数据的权限
数据库管理角色(Database Administration Roles):
dbAdmin:在当前dB中执行管理操作
dbOwner:在当前DB中执行任意操作
userAdmin:在当前DB中管理User
备份和还原角色(Backup and Restoration Roles):
backup
restore
跨库角色(All-Database Roles):
readAnyDatabase:授予在所有数据库上读取数据的权限
readWriteAnyDatabase:授予在所有数据库上读写数据的权限
userAdminAnyDatabase:授予在所有数据库上管理User的权限
dbAdminAnyDatabase:授予管理所有数据库的权限
集群管理角色(Cluster Administration Roles):
clusterAdmin:授予管理集群的最高权限
clusterManager:授予管理和监控集群的权限,A user with this role can access the config and local databases, which are used in sharding and replication, respectively.
clusterMonitor:授予监控集群的权限,对监控工具具有readonly的权限
hostManager:管理Server
2.2 重新启动
去腾讯云开放端口 27017,然后重新启动 mongod 服务
ps aux | grep mongod Kill -9 xxxx mongod --dbpath /var/lib/mongo --logpath /var/log/mongodb/mongod.log --fork --auth --bind_ip 0.0.0.0
3 安装Nginx
apt install nginx
在 nginx 安装目录下有一个 nginx.conf,如何配置呢?
可以在 nginx 目录下的 conf.d 文件夹下新建配置文件,比如 biandan.me.conf
cd /etc/nginx vim ./conf.d/biandan.me.conf server { listen 80; server_name biandan.me; #这里输入绑定服务器的域名,多个用空格隔开 location / { root /home/ubuntu/html; #这里是静态资源的文件夹路径 index index.html index.htm; #主页入口文件 try_files $uri $uri/ /index.html; #vue的单页面应用需要这样配置 } location /api/v1 { # 代理接口 proxy_pass http://127.0.0.1:3000/api/v1; #我的后台接口端口号是3000 } error_page 500 502 503 504 /50x.html; location = /50x.html { root /etc/nginx/html; } } :wq nginx -s reload
4 最后
进入后端项目的目录,使用 pm2 start ./app/index.js 启动
上传vue项目到 /home/ubuntu/html 目录,域名A记录绑定服务器IP即可
大佬(๑•̀ㅁ•́ฅ)
哇,抱抱小扁担|´・ω・)ノ
是大佬(๑•̀ㅁ•́ฅ)
摸摸小扁担|´・ω・)ノ
有用,学习了。