优雅的在一台vps(云主机)上面部署mongodb
在本地开发:
vue项目使用8080端口
mongodb使用是27017端口
express :3000
在本地开发时使用:
在config/index.js 配置解决了vue本地开发跨域问题
proxyTable: {
'/users' : {
target: 'http://localhost:3000'
},
'/users/*' : {
target: 'http://localhost:3000'
},
},
然而上线部署的时候这些端口怎么配合调用呢,怎么配置代理?
首先安装mongodb
在服务器上安装mongodb
需要在服务器上面创建 规定的文件
创建文件夹的shell命令
mkdir -p mongodb/{mongo,mlog}
会创建对应的文件
安装mongodb服务
在centos系统上面:(需要分别按照客户端和服务端)
yum install mongodb -y
yum install mongodb-server -y
在Ubuntu上面
apt-get install mongodb -y
创建一个mongodb.conf
我在 /root/config/mongodb.conf
port=27017 #指定端口
fork=true #后台运行
dbpath=/root/mongodb/mongo #规定数据库的位置
logpath=/root/mongodb/mlog/mongodb.log #规定数据库的日志文件
#slave=true #声明从
#source=123.207.172.26:27018 #规定从属于哪个ip 注意:ip是主服务器的 最好用内网ip
# bind_ip=127.0.0.1,192.168.0.4 #允许的地址 为了安全
nohttpinterface=true #禁止http访问
启动方式:
mongod -f mongodb.conf
我的启动方式 mongod -f /root/config/mongodb.conf
下面信息说明,mongodb正则启动写入初始化数据 需要等待一会,切记不要关掉窗口
about to fork child process, waiting until server is ready for connections.
forked process: 12566
all output going to: /root/mongodb/mlog/mongodb.log
出现这句话,表示mongodb安装成功
child process started successfully, parent exiting
更改防火墙配置
vim /etc/iptables.rules
> 添加以下配置
-A INPUT -p tcp -m tcp --dport 27017 -j DROP
如果是阿里云的专有网络请去添加安全组配置规则
允许 自定义 TCP
27017/27017 地址段访问
0.0.0.0/0
测试:
服务器测试:
mongo
show dbs;
使用远程测试
mongoBooster 桌面工具测试远程连接(没有禁止掉远程连接的情况)
在mongodb.conf配置文件添加可以禁止远程
# bind_ip=127.0.0.1,192.168.0.4 #允许的地址 为了安全
部署 vue express 稍后会写