Ubuntu18.04服务安装

为什么80%的码农都做不了架构师?>>>   hot3.png

1.Nginx

https://www.digitalocean.com/community/tutorials/how-to-install-nginx-on-ubuntu-18-04-quickstart

sudo systemctl restart nginx

2.mongodb

https://www.howtoforge.com/tutorial/install-mongodb-on-ubuntu/

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 68818C72E52529D4

第1步 - 导入公钥

Ubuntu软件包管理器apt(高级软件包工具)需要软件分发服务器的GPG密钥,以确保软件包的一致性和真实性。执行此命令可将MongoDB密钥导入服务器。

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 68818C72E52529D4

第2步 - 创建源列表文件MongoDB

 使用以下命令在/etc/apt/sources.list.d/中创建MongoDB列表文件:

sudo echo "deb http://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list

第3步 - 更新存储库

使用apt命令更新存储库:

sudo apt-get update

第4步 - 安装MongoDB

现在,您可以通过键入以下命令来安装MongoDB:

sudo apt-get install -y mongodb-org

MongoDB apt安装程序自动为Systemd创建了一个mongod.service文件,因此无需再手动创建它。

启动MongoDB并将其添加为要在引导时启动的服务:

 

sudo systemctl start mongod 
sudo systemctl enable mongod

现在使用netstat命令检查MongoDB是否已在端口27017上启动。

sudo netstat -plntu

Ubuntu18.04服务安装_第1张图片

配置MongoDB用户名和密码

安装MongoDB软件包后,您可以为数据库服务器配置用户名和密码:

第1步 - 打开mongo shell

在为MongoDB设置用户名和密码之前,需要在服务器上打开MongoDB shell。您可以输入以下内容登录:

mongo

如果您收到错误全局初始化失败:BadValue无效或没有设置用户区域设置。请确保正确设置LANG和/或LC_ *环境变量,请尝试以下命令:

export LC_ALL=C
mongo

第2步 - 切换到数据库管理员

进入MongoDB shell后,切换到名为admin的数据库:

use admin

第3步 - 创建root用户

使用以下命令创建root用户:

db.createUser({user:"admin", pwd:"admin123", roles:[{role:"root", db:"admin"}]})

说明:使用密码admin123创建用户admin,并以root身份拥有权限/角色,数据库为admin

Ubuntu18.04服务安装_第2张图片

现在输入exit以退出MongoDB shell。

exit

而你又回到了Linux shell上。

第4步 - 启用MongoDB身份验证

使用编辑器编辑mongodb服务文件'/lib/systemd/system/mongod.service'  。

sudo nano /lib/systemd/system/mongod.service

在' ExecStart '第9行,添加新选项' --auth '。

ExecStart=/usr/bin/mongod --auth --config /etc/mongod.conf

保存服务文件并退出nano。

重新加载systemd服务:

sudo systemctl daemon-reload

第5步 - 重启MongoDB并尝试连接

现在重启MongoDB并与创建的用户建立连接。

sudo service mongod restart

并使用以下命令连接到MongoDB shell:

mongo -u admin -p admin123 --authenticationDatabase admin

你会看到这样的输出:

Ubuntu18.04服务安装_第3张图片

启用外部访问并配置UFW防火墙

UFW是Ubuntu中的默认防火墙。在本章中,我将展示如何配置UFW以允许外部访问MongoDB。

检查UFW状态

sudo ufw status

结果是: 

Status: inactive

使用此命令启用UFW,如果通过SSH连接,则首先打开SSH端口:

sudo ufw allow ssh
sudo ufw enable

在继续下一步之前。

出于安全原因,您应仅允许从需要访问数据库的IP地址访问MongoDB端口  27017。默认情况下,localhost始终能够访问它,因此无需为IP 127.0.0.1打开MongoDB端口。

UFW防火墙语法

sudo ufw allow from  to  port 

在UFW中打开MongoDB端口

要允许从外部IP 192.168.1.10访问MongoDB,请使用以下命令:

sudo ufw allow from 192.168.1.10 to any port 27017

将上述命令中的IP地址替换为要允许访问MongoDB的外部IP。

如果要为任何IP打开MongoDB端口,例如,如果您在本地网络中运行它并且该网络中的所有系统都能够访问MongoDB,请使用以下命令:

sudo ufw allow 27017

使用以下命令检查UFW防火墙的状态:

sudo ufw status

MongoDB默认监听localhost,为了使数据库可以从外部访问,我们必须重新配置它以监听服务器IP地址。

在nano编辑器中打开mongod.conf文件:

sudo nano /etc/mongod.conf

并在bind_ip行中添加服务器的IP地址,如下所示:

# network interfaces
net:
 port: 27017
 bindIp: 127.0.0.1,192,168.1.100
 

将192.168.1.100替换为服务器的IP,然后重新启动MongoDB以应用更改。

sudo service mongod restart

现在,您可以通过网络访问MongoDB数据库服务器。

虚拟机映像

本教程可作为Howtoforge订户的OVA / OVF格式的即用型虚拟机使用。VM格式与VMWare和Virtualbox以及可导入ova或ovf格式的其他工具兼容。您可以在顶部的右侧菜单中找到下载链接。单击文件名以开始下载。

VM的登录详细信息如下:

SSH登录

用户名:administrator 
密码:howtoforge

管理员用户具有sudo权限。

请在首次启动后更改密码。

VM配置为静态IP 192.168.1.100。有关如何更改静态IP的说明,请参见此处。

结论

MongoDB是一个着名的NoSQL数据库,提供高性能,高可用性和自动扩展。它与RDBMS不同,例如MySQL,PostgreSQL和SQLite,因为它不使用SQL来设置和检索数据。MongoDB将数据存储在称为BSON的“文档”中(JSON的二进制表示以及附加信息)。MongoDB仅适用于64位长期支持Ubuntu版本。

 

 

 

3.安装nodejs 10

https://websiteforstudents.com/install-the-latest-node-js-and-nmp-packages-on-ubuntu-16-04-18-04-lts/

curl -sL https://deb.nodesource.com/setup_10.x | sudo bash -

 

4.安装angular-cli

npm install -g @angular/cli

5.安装nodemon 开发阶段用的

npm install -g nodemon

6.安装forever,后台启动服务

sudo npm -g install forever

创建启动服务脚本 startserver.sh

#!/bin/sh
#service mongodb start
rm .forever/*.log
NODE_ENV=production forever start -l forever_lieefu.log -e err_lieefu.log  ./dyweb/server/app.js
#停止所有运行的node App
#forever stopall

7.防止服务器端的SSH超时

如果您是服务器管理员,则可以将以下内容添加到/etc/ssh/sshd_config服务器上的SSH守护程序配置中,以防止客户端超时 - 因此他们不必修改其本地SSH配置:

ClientAliveInterval 120
ClientAliveCountMax 720

这将使服务器每120秒向客户端发送一个“空数据包”,并且在客户端处于非活动状态720个间隔(120秒* 720 = 86400秒= 24小时)之前不会断开它们。

重启ssh服务 sudo service ssh restart

转载于:https://my.oschina.net/lieefu/blog/3025265

你可能感兴趣的:(Ubuntu18.04服务安装)