目录
Linux部署node.JS、NginX、egg、MongoDB和非js世界的后端服务之CentOS-腾讯云
一、“公有云”服务器部署
1.1、购买常用的云服务器硬件设施资源
1.2.1、腾讯云
1.2.2、阿里云
1.2.3、华为云
1.2.4、百度云
1.2.5、其它如“京东云”等等(略)
1.2、“公有云”服务器部署应用
1.2.1、部署操作系统“镜像”
1.2.2、在操作系统“管理控制台”部署网络安全及端口配置
1.2.3、部署 CentOS 可视化界面:
1.2.4、部署node.JS及包管理器(主要与后端应用相关)
◆1.2.4.4、让node、npm、npx进程开机立即挂载全局搜索路径PATH
◆关于开机自启服务
1.2.5、部署NginX(主要与简单负载均衡策略管理和web服务及其web代理相关)
1.2.6、部署MongoDB大数据应用
1.2.7、关于“mongoDB管理客户端”连接
1.2.8、centOS部署“非js世界”的开发的操作系统后端服务应用
1.2.9、阿里云、百度云、华为云、京东云,因其内置的centos具体版本及其优化,会在很多细节上,各有差异
二、“私有云”服务器部署
2.1、传统方案
2.2、现代通行方案
2.2.1、与对应的“公有云”服务器部署有何差异
2.2.2、“私有云”服务器部署VirtualBox虚拟机管理平台
2.2.3、在“私有云”服务器VirtualBox虚拟机管理平台上部署Ubuntu或CentOS
“公有云”服务器,简化了企业自有的硬件设施上,部署操作系统及其应用、网络管理、平台管理的复杂性。
腾讯云 - 产业智变 云启未来
https://www.aliyun.com/
云产品最新优惠活动_域名注册优惠促销_域名优惠购买-华为云
百度智能云-智能时代基础设施
以“腾讯云”为例,其它“云服务”供应商的平台类似,不再单独赘述。
购买时,默认有操作系统,可选择;也可事后,在“控制台”中重新安装所需的操作系统及其版本:
购买完毕的“服务器”实例,其对应有默认的“安全组”配置,通常,常用的及所有端口,均开放的,这样会很不安全,可以“客制化”配置所需端口及其服务名:
上述为“轻量级服务器”,“云服务器”的“安全组”菜单配置内容类似。
更专业的“安全服务”需求,请购买其专业的“主机安全服务”。
远程登录服务器,即可进入OS控制台命令行,发命令进行管理或应用和部署:
点“命令块”安装,
这样就远程连接到云服务器了。
1.2.3.1、下载及安装方法
# 搭建 CentOS 可视化界面:
# 1)、安装图形化界面组件:
sudo yum groupinstall "Server with GUI" -y
# 2)、设置默认启动图形化界面:
systemctl set-default graphical
# 3)、重启实例
reboot
安装过程,会下载并安装大量的GUI支持动态库,比较耗时,且个每个GUI原生组件CPU单例独占模式:
root后,必须以VNC方式登录:
界面应当出现一下选单:
CentOS Linux ( 4.08****版本号选单 ) -----光标上下键选此项,回车
CentOS Linux ( Rescue灾难安全模式 )
回车后:
# 若未出现GUI登录切换菜单,请reboot再次重启:
# 1)、设置默认启动图形化界面:
systemctl set-default graphical
# 2)、重启实例
reboot
1.2.3.2、系统GUI配置
详见,我另外一个博文:
部署CentOS可视化界面GUI-之腾讯云服务器_pulledup的博客-CSDN博客
1.2.4.1、安装部署node.JS所需的基本信息
来到node.js的官方站点,查看其在Linux下的部署:
Download | Node.js
Installing Node.js via package manager | Node.js
如何在 Linux 上通过二进制存档安装 Node.js ,以下这个链接仅作参考,不同“云服务平台服务商”有差异(在配置操作系统的全局配置环节:~/.profile刷新);请以本文为准!!!
Installation · nodejs/help Wiki · GitHub
1.2.4.2、node.js对应的芯片的二进制压缩安装包的下载链接:
Download | Node.js
1.2.4.3、下载、解压
总体操作如下:
细解每步操作:
◆1.2.4.3.1、下载安装包
# linux下发wget下载命令:
wget https://nodejs.org/dist/v16.17.1/node-v16.17.1-linux-x64.tar.xz
◆1.2.4.3.2、配置预安装版本及操作系统芯片RO架构
# 配置安装版本:
VERSION=v16.17.1
# 配置操作系统芯片架构(本centOS v8.2虚拟机实例x86_64芯片; 若为ARM芯片的云服务器,应当下载对应的node.js版本):
DISTRO=linux-x64
◆1.2.4.3.3、创建解压目录:
# 创建解压目录:
sudo mkdir -p /usr/local/lib/nodejs
◆1.2.4.3.4、执行解压:
# 执行解压:
sudo tar -xJvf node-$VERSION-$DISTRO.tar.xz -C /usr/local/lib/nodejs
◆1.2.4.3.5、设置环境变量(注意该步骤与node.js官方文档不一样~/.profile):
# 设置环境变量~/.bash_profile,最后添加如下:
# 使用vim工具linux系统文件编辑器,vim使用方法参考如下:
# https://baijiahao.baidu.com/s?id=1740494152757977521&wfr=spider&for=pc(第三方文档,仅供参考)
# 3.1、vim命令进入配置文件:
vim /root/.bash_profile
# 3.2、 按 i 键(要等好一会,才会出来原始配置文件的内容),
# 3.3、 然后,加入以下配置:
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
VERSION=v16.17.1
DISTRO=linux-x64
# 3.4、按ESC键退出编辑状态
# 3.5、输入并敲回车键,保存修改的内容后退出
:wq
# ###若安装了GUI图形用户界面,可用Gnome应用软件gedit进行编辑###
◆1.2.4.3.6、验证安装
# 验证安装
node -v
◆1.2.4.3.7、刷新本用户的配置资料(注意该步骤与node.js官方文档不一样~/.profile)
# 刷新本用户的配置
source /root/.bash_profile
◆1.2.4.3.8、再次验证全部安装
# 再次验证全部安装
node -v
npm version
npx -v
结果:
# 执行这段代码,让node、npm、npx进程开机便挂载:
echo "export PATH=/usr/local/lib/nodejs/node-$VERSION-$DISTRO/bin:$PATH" >> /root/.bash_profile && source /root/.bash_profile && node -v
# 或执行这段代码,也行:
echo "export PATH=/usr/local/lib/nodejs/node-$VERSION-$DISTRO/bin:$PATH" >> /etc/profile && echo "export PATH=/usr/local/lib/nodejs/node-$VERSION-$DISTRO/bin:$PATH" >> /etc/bashrc
上述,代码,本质上,是将node.js的二进制执行程序的路径加入linux全局环境变量:
◆ 但:通常不要这么做,仅仅将其配置到 /etc/bashrc 或 /etc/profile 全局变量文件,即可!
◆ /etc/environment 文件是面对系统的,系统经过 /etc/environment 文件中的PATH去找对应的东西,如果修改有误会可能对系统产生难以修复的影响
◆重启服务器:
调node让egg服务、mongod服务等服务自动启动,我将在专门的博客里介绍,部署完毕!
◆1.2.4.5、其它相关参考资料
Vim基础用法,最常用、最实用的命令介绍(保姆级教程)
云服务器 手动搭建 Node.js 环境-最佳实践-文档中心-腾讯云
操作系统镜像安装-搭建 Node.js 开发环境-最佳实践-文档中心-腾讯云
使用标准方式登录 Linux 实例(推荐):
您也可以根据实际操作习惯,选择其他不同的登录方式:
- 使用远程登录软件登录 Linux 实例
- 使用 SSH 登录 Linux 实例
轻量服务器-制作整机快照备份:
轻量应用服务器 管理快照-操作指南-文档中心-腾讯云快照可用于服务器数据备份。每个地域的免费快照配额为已创建实例数(待回收实例和存储型套餐实例除外)乘以2,且最多不超过10个。注:使用存储型套餐的实例不支持创建快照。
ssh参考:
轻量应用服务器 使用远程登录软件登录 Linux 实例-操作指南-文档中心-腾讯云Linux 常用操作及命令问题:
云服务器 Linux 常用操作及命令问题-常见问题-文档中心-腾讯云
卸载已装软件:
sudo rpm -e 软件可执行文件名
查看linux服务器当前的进程信息:sudo ps -ef
标准输入输出重定向:
sudo nohup 你要重定向的linux可执行文件名 start &
比如:
sudo nohup nginx start &
可让输入的进程从远程终端重定向到主机后台进程池,但注意:“并非开机自启服务”!
CentOS 环境下通过 dfn或yum命令 安装软件:云服务器 CentOS 环境下通过 dfn或yum 安装软件-运维指南-文档中心-腾讯云https://cloud.tencent.com/document/product/213/2046
# CentOS 环境下通过 dfn或yum命令 安装nginx等软件:
sudo dnf install nginx
选 Y ,确认安装,结果如下:
验证Nginx安装结果:
# 验证安装版本:
nginx -v
# 结果:nginx version: nginx/1.14.
# 验证可启动nginx:
sudo nginx
验证nginx启动,在浏览器输入IP或解析后的域名,会自动显示nginx作为web服务器的默认首页:
# 重启nginx的web服务
sudo nginx -s reload
# 停止nginx的web服务
sudo nginx -s stop
查看软件包的版本信息:
# 查看软件包的版本信息:
sudo rpm -q
查看已安装软件的信息:
# 查看已安装软件的信息:rpm -ql +软件
rpm -ql
# 软件安装的路径及相关信息:
/etc/logrotate.d/nginx
/etc/nginx/fastcgi.conf
/etc/nginx/fastcgi.conf.default
/etc/nginx/fastcgi_params
/etc/nginx/fastcgi_params.default
/etc/nginx/koi-utf
/etc/nginx/koi-win
/etc/nginx/mime.types
/etc/nginx/mime.types.default
/etc/nginx/nginx.conf
/etc/nginx/nginx.conf.default
/etc/nginx/scgi_params
/etc/nginx/scgi_params.default
/etc/nginx/uwsgi_params
/etc/nginx/uwsgi_params.default
/etc/nginx/win-utf
/usr/bin/nginx-upgrade
/usr/lib/.build-id
/usr/lib/.build-id/2d
/usr/lib/.build-id/2d/da6018ae12edb856ad3d2cf61bf586b6b4873c
/usr/lib/systemd/system/nginx.service
/usr/lib64/nginx/modules
/usr/sbin/nginx
/usr/share/doc/nginx
/usr/share/doc/nginx/CHANGES
/usr/share/doc/nginx/README
/usr/share/doc/nginx/README.dynamic
/usr/share/licenses/nginx
/usr/share/licenses/nginx/LICENSE
/usr/share/man/man3/nginx.3pm.gz
/usr/share/man/man8/nginx-upgrade.8.gz
/usr/share/man/man8/nginx.8.gz
/usr/share/nginx/html/404.html
/usr/share/nginx/html/50x.html
/usr/share/nginx/html/index.html
/usr/share/nginx/html/nginx-logo.png
/usr/share/nginx/html/poweredby.png
/usr/share/vim/vimfiles/ftdetect/nginx.vim
/usr/share/vim/vimfiles/indent/nginx.vim
/usr/share/vim/vimfiles/syntax/nginx.vim
/var/lib/nginx
/var/lib/nginx/tmp
/var/log/nginx
# 用vim编辑nginx的web服务的入口文件index.html
vim /usr/share/nginx/html/index.html
# 安装firefox浏览器 ###若部署了GUI图形用户界面默认库已安装并挂载###
yum -y install firefox
# 查看安装的firefox浏览器版本
sudo firefox -version
附注:centOS8.2下安装vscode
centOS部署vscode_pulledup的博客-CSDN博客
# 查询云服务器中,可作为标准模块而调用的软件包:
sudo dnf module list
没有MongoDB,就只能下载安装:
1.2.6.1、MongoDB官方下载页面(建议使用v4.2及其以上,这里以v4.2为例)
◆ 下载包:
◆◆◆主要安装包是要“分平台分芯片架构”的,别下错了!!!
◆安装教程入口: Install MongoDB — MongoDB Manual
◆在 Red Hat 或 CentOS 上安装“社区版” MongoDB Community Edition :
◆ Install MongoDB Community Edition on Red Hat or CentOS — MongoDB Manual
◆v4.2的RedHat / CentOS 8.0 x64“整体二进制打包”下载,用tar解压:
https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel80-4.2.22.tgz
◆各版本release的压缩包(含v4.2.22):
MongoDB Community Downloads | MongoDB
◆对于具体云服务提供商的CentOS8.2平台,若不支持上述“yum包管理系统安装”的,则按照其.rpm直接从 MongoDB 存储库下载文件,用CentOS默认的“rpm包管理系统安装”,右键复制download按钮获取下载链接地址(v4.2.23):
◆◆◆下载地址: MongoDB Community Download | MongoDB
◆若.rpm分包下载,至少需要下载如下分包:
1、server(安装后带mongod) ;
2、数据库管理的shell工具(即:mongo)
# 下载:
# ◆若.rpm分包下载,至少需要下载如下分包:
1、server(安装后带mongod) ;
2、数据库管理的shell工具(即:mongo)
# 下载server服务器包:
curl https://repo.mongodb.org/yum/redhat/8/mongodb-org/4.2/x86_64/RPMS/mongodb-org-server-4.2.23-1.el8.x86_64.rpm --output mongodb-org-server-4.2.23-1.el8.x86_64.rpm --anyauth
# 下载shell数据库脚本管理实用工具:
curl https://repo.mongodb.org/yum/redhat/8/mongodb-org/4.2/x86_64/RPMS/mongodb-org-shell-4.2.23-1.el8.x86_64.rpm --output mongodb-org-shell-4.2.23-1.el8.x86_64.rpm --anyauth
# ◆若.tgz“整体二进制打包”:
curl https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel80-4.2.22.tgz --output mongodb-linux-x86_64-rhel80-4.2.22.tgz --anyauth
# 下载后:
# 解压:
tar zxvf mongodb-linux-x86_64-rhel80-4.2.22.tgz
# 移动至目标文件夹(/usr/local/mongodb目录应当事先建立好):
mv mongodb-linux-x86_64-4.2.1/ /usr/local/mongodb
现以.rpm分包说明如下:
下载结果:
1.2.6.2、安装MongoDB的.rpm包
◆ centOS的rpm内置指令安装.rpm包:
# rpm安装webshell用URL方式下载并上传的.rpm包,安装mongoDB:
# rpm安装server服务器(mongod)
sudo rpm -i mongodb-org-server-4.2.23-1.el8.x86_64.rpm
# rpm安装mongo (shell工具)
sudo rpm -i mongodb-org-shell-4.2.23-1.el8.x86_64.rpm
.rpm安装结果(.rpm包的tree结构),查询:
#
rpm -q -l mongodb-org-server-4.2.23-1.el8.x86_64.rpm
#
rpm -q -l mongodb-org-shell-4.2.23-1.el8.x86_64.rpm
1.2.6.3、配置mongodb.conf
◆ 配置mongodb.conf
# “客制化”配置mongodb.conf
sudo vim /etc/mongod.conf
◆ vim实用工具:i命令插入;ESC键退出编辑;:wq输入并回车保存并退出:
# mongod.conf
# for documentation of all options, see:
# http://docs.mongodb.org/manual/reference/configuration-options/
# where to write logging data.
systemLog:
destination: file
logAppend: true
path: /var/log/mongodb/mongod.log
# Where and how to store data.存取数据的位置、如何存取:# journal:启动journal系统日志,64位系统默认开启,32位默认关闭0
storage:
dbPath: /var/lib/mongo
journal:
enabled: true
# engine:
# wiredTiger:
# how the process runs
processManagement:
fork: true # fork and run in background在后台分叉并运行
pidFilePath: /var/run/mongodb/mongod.pid # location of pidfile本机的pid文件
timeZoneInfo: /usr/share/zoneinfo
# network interfaces
net:
port: 27017
bindIp: 0.0.0.0 # 127.0.0.1; Enter 0.0.0.0,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.bindIpAll setting.
#security:
#operationProfiling:
#replication:
#sharding:
## Enterprise-Only Options
#auditLog:
#snmp:
1.2.6.4、启动服务
# 以centOS系统内核的服务管理的方式,启动mongod的后台服务:
sudo systemctl start mongod
# 备注:在Linux中,systemd是与SysV和LSB初始化脚本兼容的系统和服务管理器,开启systemd服务可以提供基于守护进程的按需启动策略。systemd可以通过systemctl命令来对系统服务进行运行、关闭、重启、显示、启用或禁用的操作。systemctl命令与sysvinit命令的功能相似,但是建议用systemctl来进行系统服务管理。
# 备注:systemctl start 某项服务:不会影响现有的服务
其它与此相关的,可能会遇到,参考如下:
# 停止某服务:
sudo systemctl stop mongod
# 重启某服务:
sudo systemctl restart mongod
# 启用某服务:
sudo systemctl enable mongod
# 禁用某服务:
sudo systemctl disable mongod
# 查看某服务运行状态:
systemctl status mongod.service
# 如果服务运行状态错误,如何跟踪错误:
journalctl -xe
# 可让输入的进程从远程终端重定向到主机后台进程池(退出终端后进程仍然挂载,前提是要先启动进程,但注意:“并非开机自启服务”!):
# 比如 :
sudo nohup mongod &
sudo nohup nginx &
# :与此相关,你可能会遇到错误提示,Socket监听端口的进程pid已被占用:
# Failed to set up listener: SocketException: Address already in use
# 解决:
# 查看mongod进程的socket
ps aux | grep mongod
# mongod 1014 0.1 6.7 1551388 124816 ? SLl 10月11 1:43 /usr/bin/mongod -f /etc/mongod.conf
# root 578647 0.0 0.0 12348 1120 pts/0 R+ 13:22 0:00 grep --color=auto mongod
# 杀死1014端口pid上的该mongod进程
sudo kill -9 1014
其中,该指令可绑定已经启动的服务到后台服务:
# 可让输入的进程从远程终端重定向到主机后台进程池(退出终端后进程仍然挂载,前提是要先启动进程):
sudo nohup mongod &
1.2.6.5、设置“客户端”访问必须的内置数据库admin的访问控制
如果没有“访问控制”(基于操作系统底层的技术),启动服务时,将会有提示:
# Access control is not enabled for the database.
解决方法,在实例的dbpath配置指向的内置数据库admin中加入“用户及其角色”:
# Access control is not enabled for the database.
# 解决方法,在实例的dbpath配置指向的内置数据库admin中加入“用户及其角色”:
use admin
db.createUser({user: "root",pwd:"A****19^$***m", roles: [{role:"userAdminAnyDatabase",db:"admin" },{role:"readWriteAnyDatabase",db: "admin"}]})
# :注意,这里的root及其密码A****19^$***m,与ssh的root账号无任何关系,不要混淆
若缺少此控制,你的其它管理客户端,不能“连接”到“mongod服务”。
1.2.6.6、影响“mongoDB管理客户端”无法连接mongod服务的主要因素
# 1、mongod.conf客户端网络接口配置缺少认证的IP:
# network interfaces
net:
bindIp: 0.0.0.0 #
# 解决方法:1.2.6.3、配置mongodb.conf
# 2、缺少访问控制:Access control is not enabled for the database.
# 解决方法:1.2.6.5、设置“客户端”访问必须的内置数据库admin的访问控制
1.2.6.9、参考:创建“客制化”的数据库、配置路径及配置mongodb.conf
若上面你是.tgz“整体二进制打包”的:
1.2.6.9.1、创建“客制化”的数据库及其配置路径
◆ 命令行
# 创建“客制化”的“目标”数据文件夹、日志文件和mongodb.conf配置文件
# 创建“客制化”的“目标”数据文件夹:
mkdir -p /usr/local/mongodb/data/db
# 创建空的日志文件:
touch /usr/local/mongodb/mongod.log
# 创建空的mongodb.conf配置文件:
touch /usr/local/mongodb/mongodb.conf
1.2.6.9.2、下载、解压、移动目标:
◆ 下载、解压、移动至客制化“目标”文件夹
# 进入Dowloads文件夹
cd ~
cd ./Dowloads
curl https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel80-4.2.22.tgz --output mongodb-linux-x86_64-rhel80-4.2.22.tgz --anyauth
# 下载后:
# 解压:
tar zxvf mongodb-linux-x86_64-rhel80-4.2.22.tgz
# 移动至客制化"目标"文件夹(/usr/local/mongodb目录应当事先建立好):
mv mongodb-linux-x86_64-4.2.1/ /usr/local/mongodb
解压结果如下:
# 解压结果如下:
[root@VM-12-4-centos Downloads]# ls
mongodb-linux-x86_64-rhel80-4.2.22.tgz mongodb-org-server-4.2.23-1.el8.x86_64.rpm mongodb-org-shell-4.2.23-1.el8.x86_64.rpm 'nohup invocation (GNU Coreutils 9.1).pdf'
[root@VM-12-4-centos Downloads]# tar zxvf mongodb-linux-x86_64-rhel80-4.2.22.tgz
mongodb-linux-x86_64-rhel80-4.2.22/THIRD-PARTY-NOTICES.gotools
mongodb-linux-x86_64-rhel80-4.2.22/README
mongodb-linux-x86_64-rhel80-4.2.22/THIRD-PARTY-NOTICES
mongodb-linux-x86_64-rhel80-4.2.22/MPL-2
mongodb-linux-x86_64-rhel80-4.2.22/LICENSE-Community.txt
mongodb-linux-x86_64-rhel80-4.2.22/bin/mongodump
mongodb-linux-x86_64-rhel80-4.2.22/bin/mongorestore
mongodb-linux-x86_64-rhel80-4.2.22/bin/mongoexport
mongodb-linux-x86_64-rhel80-4.2.22/bin/mongoimport
mongodb-linux-x86_64-rhel80-4.2.22/bin/mongostat
mongodb-linux-x86_64-rhel80-4.2.22/bin/mongotop
mongodb-linux-x86_64-rhel80-4.2.22/bin/bsondump
mongodb-linux-x86_64-rhel80-4.2.22/bin/mongofiles
mongodb-linux-x86_64-rhel80-4.2.22/bin/mongoreplay
mongodb-linux-x86_64-rhel80-4.2.22/bin/mongod
mongodb-linux-x86_64-rhel80-4.2.22/bin/mongos
mongodb-linux-x86_64-rhel80-4.2.22/bin/mongo
mongodb-linux-x86_64-rhel80-4.2.22/bin/install_compass
目标/usr/local/mongodb文件及目录结构如下:
# 目标/usr/local/mongodb文件及目录结构如下:
[root@VM-12-4-centos Downloads]# cd /usr/local/mongodb/mongodb-linux-x86_64-rhel80-4.2.22
[root@VM-12-4-centos mongodb-linux-x86_64-rhel80-4.2.22]# ls
bin LICENSE-Community.txt MPL-2 README THIRD-PARTY-NOTICES THIRD-PARTY-NOTICES.gotools
[root@VM-12-4-centos mongodb-linux-x86_64-rhel80-4.2.22]#
[root@VM-12-4-centos mongodb-linux-x86_64-rhel80-4.2.22]# cd bin
[root@VM-12-4-centos bin]# ls
bsondump install_compass mongo mongod mongodump mongoexport mongofiles mongoimport mongoreplay mongorestore mongos mongostat mongotop
[root@VM-12-4-centos bin]#
1.2.6.9.3、“客制化”配置mongodb.conf
◆ “客制化”配置mongodb.conf
# “客制化”配置mongodb.conf
sudo vim /usr/local/mongodb/mongodb.conf
# 方法同上
◆ mongodb.conf 配置结果:
#
systemLog:
destination: file
# 日志输出方式。file/syslog,如果是file,需指定path,默认是输出到标准输出流中
path: /usr/local/mongodb/mongod.log
# 日志路径
logAppend: true
# 启动时,日志追加在已有日志文件内还是备份旧日志后,创建新文件记录日志, 默认false
net:
port: 27017
# 监听端口,默认27017
bindIp: 0.0.0.0
# 最大连接数,可接受的连接数还受限于操作系统配置的最大连接数
wireObjectCheck: true
# 校验客户端的请求,防止错误的或无效BSON插入,多层文档嵌套的对象会有轻微性能影响,默认true
processManagement:
fork: true
# 后台运行“进程管理器”--进程分叉
security:
authorization: disabled
# enabled/disabled #开启客户端认证
storage:
dbPath: /usr/local/mongodb/data/db
# 数据库物理文件存取路径
journal:
enabled: true
# 启动journal系统日志,64位系统默认开启,32位默认关闭0
# 导出系统node.js的全局路径:
# export PATH=/usr/local/lib/nodejs/node-$VERSION-$DISTRO/bin:$PATH
# export PATH
1.2.6.9.4、启动服务-变更全局路径指向
# 安装完成后,使用`systemctl`命令启动MongoDB服务mongod:
# 运行该服务:
sudo systemctl start mongod
// 指到目标: --dbpath /usr/local/mongodb/data/db
有关1.2.6.9、的其它细节:略。
1.2.7.1、vscode
输入“数据库连接字符串”,回车,开始连接:
mongodb://root:A******^*&(8***@114.117.4.21:27017/?authSource=admin&readPreference=primary&ssl=false
1.2.7.2、Navicat
若“后端服务”应用编译为“控制台”脚本运行模式,无需安装配置Linux的GUI图形用户界面;
若“后端服务”应用需要使用GUI,则按照本文《1.2.3、搭建CentOS可视化界面》进行配置。
用C++、Pascal、Python等语言及其IDE开发的(Java也可,但其下层是Java Virtual Machine虚拟机及其Java Runtime Environment运行时环境依赖,然后才能到达操作系统),针对Linux操作系统家族或跨平台开发的基于“操作系统原生组件”的“后端服务”的应用,将会“使能”后端服务“更强劲”的动力。
比如:
等等。
在企业自有的硬件设施上,安装Linux操作系统。
在硬件设施上,安装类似VMWare或VirtualBox虚拟机管理平台;然后再在其上部署不同的操作系统,比如Linux操作系统Ubuntu或CentOS。
主要体现在:
(1)、云机防火墙等“安全配置”
(2)、“公网”至“内网”的“端口映射”
(3)、“公网”至“内网”的网关安全
这一部分,相对很专业,请参考专门的博文或第三方文档。
本文,仅阐述VMWare和VirtualBox虚拟机管理平台的部署、虚机上如何部署Ubuntu或CentOS。
所有部署,均基于底层的操作系统。大型机、、中型机、小型机操作系统相对昂贵,一般中小微企业均难以承受其费用及后期维护成本。本文,仅针对“微机”即PC平台进行说明,微软Windows (Windows 10 [桌面] 、 Windows Server 2016及其以上[服务器]) 平台为例。
2.2.2.1、在“私有云”服务器部署VirtualBox虚拟机管理平台
详见本人博客:
Delphi10.4.1开发Linux应用视频重播_pulledup的博客-CSDN博客
2.2.2.2、在“私有云”服务器部署VMWare虚拟机管理平台
(待续专门的博文链接)。
2.2.3.1、在“私有云”VirtualBox中部署Ubuntu
详见本人博客:
Delphi10.4.1开发Linux应用视频重播_pulledup的博客-CSDN博客
2.2.3.2、在“私有云”VirtualBox中部署CentOS
(待续专门的博文链接)。
喜欢的,就收藏并点个赞,鼓励我继续技术的原创写作及经验分享:
MSWindows安装部署mongoDB_pulledup的博客-CSDN博客
部署CentOS可视化界面GUI-之腾讯云服务器_pulledup的博客-CSDN博客
centOS部署vscode_pulledup的博客-CSDN博客