资讯详情

做Nodejs项目服务器部署

根据慕课网的课程《Nodejs最后一公里的笔记主要是了解项目服务器的部署过程。

1.购买自己的域名 2.购买自己的服务器 3.域名备案 4.配置服务器应用环境(用户权限,无密码登录,Nodejs安装环境、包装和组件、转发端口、SSH生成和配置证书,Nginx安装配置、防火墙、数据库、自动备份机制等。 5.安装配置数据库(包括本地数据库和云数据库)(数据库涉及数据库的角色、读写权限和自动备份机制) 6.项目远程部署、分布和更新

购买域名服务器并备案 域名:爱名网,阿里云

fdisk -l 查看磁盘当前分区信息 df -h 检查硬盘使用命令

root我们不能一直使用权限和添加用户:root不安全的用户,我们可以添加多个用户,然后为用户设置权限。

ssh无密码登录:本地生成私钥和公钥-本地传输到服务器的公钥-密钥算法对比-登录成功。

检查本地配置是否已配置ssh:进入系统根目录,ls -a查看所有文件,查看是否有文件.ssh如果文件存在,则已配置文件。

配置.ssh密钥和公钥:mkdir .shh,然后进入文件夹执行ssh-keygen -t ras -b 4096 -C"2440286214@qq.com",然后回车,设置密码。

开启.ssh代理:执行 eval “$(ssh-agent -s)”

.ssh可加入代理:执行: ssh-add ~/.ssh/id_rsa

将公钥传输到服务器:服务器配置相同.ssh,打开代理并加入代理后,设置服务器authorized_keys复制本地公钥。

SSH更多可以查看:SSH原理与应用(1):远程登录 - 网络日志阮一峰

修改服务器 22 端口,取消密码登录,增加服务器破解难度,配置 IPTables 防火墙规则,通过 Fail2Ban 增强服务器的防御动作,提高服务器的安全系数,对整个在线服务器进行各种安全保护 22 端口,取消密码登录,增大服务器的破解难度。

默认修改服务器登录端口。

配置 iptables 和 Fail2Ban 加强安全防护。

SSH软件由客户端和服务端组成,可用于客户端SecureCRT、putty、Xshell等等,在服务器端运行sshd的服务,sshd配置文件位于:/etc/ssh/sshd_config,通过使用SSH,所有传输的数据都可以加密,也可以防止dns和IP另外,欺骗,SSH压缩传输的数据可以加快传输速度。

默认端口的修改也是/etc/ssh/sshd_config修改路径。

ssh_config和sshd_config都是ssh服务器配置文件,两者的区别在于配置文件,后者是服务端的配置文件。

Ubunbu 通过服务器 nvm 安装及管理 Nodejs 版本,以及 nvm 解决全局模块使用中可能遇到的问题,安装 PM2 并简单介绍 PM2 的基本使用和它生产环境中的角色。

借助 pm2 让 Nodejs 服务常驻。

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sys sysctl -p 
  • 1

fs.inotify.max_user_watches:表示同一用户可以同时添加watch数目(watch目录的数量一般是根据目录确定的。

tee该指令将从标准输入设备读取数据,将其内容输出到标准输出设备,并将其保存成文件。

安装并配置 Nginx 的 upstream,端口的映射转发给后台 Nodejs 实现服务识别和转发。

配置 Nginx 反向代理 Nodejs 端口。

Linux 系统主要启动步骤: 1.读取 MBR 启动信息 Boot Manager。 2.加载系统内核,启动 init 进程, init 进程是 Linux 所有的系统过程都是其子过程。 3.init 进程读取 /etc/inittab 文件中的信息,并进入预设的操作水平。 /etc/rcS.d/ 首先执行目录下的启动脚本,然后执行/etc/rcN.d/ 目录。 4.根据 /etc/rcS.d/ 文件夹中相应的脚本启动 Xwindow 服务器 xorg,Xwindow 为 Linux 下图用户界面系统。 5.启动登录管理器,等待用户登录。

更改域名的 DNS 根服务器为域名指定新的分析平台,统一管理;学习不同的分析类型,增加多个分析规则,配置不同类型的资源和服务 A 记录和 CNAME。

更改域名的 DNS 根服务器。

配置解析项目域名 A 记录和 CNAME。

在 Ubuntu 14.04 上加速安装 MongoDB 学习使用特定版本 mongodump mongorestore mongoexport mongoimport 实现单表程管理配置中实现单表单库的导入和导出 Mongodb 读写和备份权限,在生产环境下实现崩溃服务器之间的数据迁移过程,结合系统 crontab bash 脚本 mongodump 定期备份备份备份角色。

在 Ubuntu 14.04 上安装 MongoDB。

往线上 MongoDB 导入单表数据或数据库。

配置在线项目 MongoDB 数据库读写权限。

从一个服务器迁移到另一个在线 MongoDB 中。

定期备份数据库方案。

将数据库备份到七牛私有云。

利用免费 Git 从本地和服务器来看,私人仓库平台管理项目源代码版本 PM2 对于初始应用程序的在线目录,一个命令实现与服务器通信的自动获取代码重启,并分别演示 5 项目部署在线流程,演示数据库 API 类型应用在线流程和微信背景 URL 配置。…

8.1 将项目代码上传到网上 Git 仓库

8.2 配置 PM2 一键部署在线项目结构

PM2是node过程管理工具可以用来简化很多node性能监控、自动重启、负载平衡等繁琐的应用管理任务,使用非常简单。

主要特性

  • 内部建筑负载均衡(使用) Node cluster 集群模块)
  • 后台运行
  • 0 秒停机重载,我明白大概意思是维护升级不需要停机.
  • 具有 Ubuntu 和 CentOS 的启动脚本
  • 停止不稳定过程(避免无限循环)
  • 控制台检测
  • 提供 HTTP API
  • 远程控制和实时接口 API ( Nodejs 模块,允许和 PM2 进程管理器交互 )

查看完整文章:https://segmentfault.com/a/1190000002539204https://segmentfault.com/a/1190000006793571

8.3 从本地发布和更新服务器 Nodejs 项目

8.4 部署发布电影网站,连接在线 MongoDB

8.5 部署 ReactNative App 线上 API 服务

8.66部署微信小程序程序 API 服务

8.7 后台部署配置微信公众号项目

不同的 SSL 免费提供证书类型和安全等级 SSL 平台应用和服务器通过 Nginx 配置证书验证模块,最后总结一下,我们学习和理解了一个真实的本地模块 Nodejs 项目是如何部署和启动的,真正的服务器生产环境是如何配置的,前端和后端的最后一个链接是如何通过域名与服务器串联的,必要的安全事项…

9.1 选购申请 SSL 证书建议:

SSL根据验证级别,证书分为域名型三种类型SSL证书,简称DVSSL;企业型SSL证书,简称OVSSL;增强型SSL证书,简称EVSSL。详情可参考:DV型、OV型、EV三种证书的申请差异_m0_37941906的博客-CSDN博客

9.2 云平台申请免费证书 Nginx 配置

SSL申请平台:又拍云、腾讯云、七牛、阿里云

9.3 谈谈运维安全和应对思路

业务搭载离不开云服务器,选择合适的平台最重要!

从目前国内云计算市场的模式来看,阿里巴巴云、腾讯云和华为云是国内云计算前三名。阿里巴巴云和腾讯云作为支持互联网平台的企业,更倾向于B端用户;华为和传统通信巨头更倾向于G端。

我从事云计算多年,接触过国内主流云平台,包括他们的销售和技术团队,对每个产品了解不多,指导数百家企业迁移到云,对云平台的选择有一定的发言权!

网上有很多评价,评价数据也多种多样,说谁好,这两篇博客分析总结非常详细,与您分享,文档地址:

博文1:云服务器哪个好!阿里云、腾讯云、华为云的服务器配置及价格对比?

博文2:阿里云服务器突发型t6、n4、s6、c5、c6怎么选?和腾讯云服务器标准型s3、sn3ne、s4、s5、sa2相比哪家好?全面解析

如果是高并发,高IO业务场景,需要确定服务器规格,可让业务应用性能发挥到最佳,参考官方文档:

阿里云服务器规格:规格实例族 - 云服务器 ECS

腾讯云服务器规格:规格实例族 - 云服务器CVM

标签: 13sa2电连接器09sa2电连接器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台