Ubuntu 20.04 使用 Nginx 作为反向代理安装 Sails.js 框架

Sails.js 是 Node.js 最流行的 MVC 框架。 它允许我们构建自定义的企业级 Node.js 应用程序。 Sails.js 支持可扩展的、面向服务的架构,并提供基本的安全性和基于角色的访问控制。 它用于开发聊天、实时仪表板和多人游戏。

特征

  • 基于 Express.js 构建
  • 支持 WebSocket
  • 与数据库无关
  • 支持同一项目中的多个数据存储
  • 坚如磐石的基础
  • 灵活的资产管道

在本指南中,我们将解释 Ubuntu 20.04 上使用 Nginx 作为反向代理安装 Sails.js。

先决条件

  • 云平台上的全新 Ubuntu 20.04 服务器
  • 在我们的服务器上配置的 root 密码

第 1 步 – 创建 云服务器

首先,登录到我们的 云服务器。 创建一个新服务器,选择 Ubuntu 20.04 作为至少 4GB RAM 的操作系统。 通过 SSH 连接到我们的云服务器并使用页面顶部突出显示的凭据登录。

登录到 Ubuntu 20.04 服务器后,运行以下命令以使用最新的可用软件包更新基本系统。

apt-get update -y

第 2 步 – 安装 Node.js

在开始之前,必须在我们的服务器上安装 Node.js。 首先,使用以下命令安装所需的依赖项:

apt-get install curl wget gnupg2 -y

接下来,使用以下命令添加 Node 源存储库:

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

接下来,使用以下命令安装 Node.js。

apt-get install nodejs -y

安装 Node.js 后,使用以下命令验证 Node.js 版本:

node --version

我们应该看到以下输出:

v14.17.0

第 3 步 – 安装 Sails.js

我们可以使用 NPM 命令轻松安装 Sails.js。

npm -g install sails

安装 Sails.js 后,使用以下命令创建一个名为 myapp 的新项目:

sails new myapp

我们将被要求为我们的 Sails 应用程序选择一个模板:

 Choose a template for wer new Sails app:
 1. Web App  ·  Extensible project with auth, login, & password recovery
 2. Empty    ·  An empty Sails app, wers to configure
 (type "?" for help, or  to cancel)
? 2

键入 2 并按 Enter 完成安装:

 info: Installing dependencies...
Press CTRL+C to cancel.
(to skip this step in the future, use --fast)
 info: Created a new Sails app `myapp`!

接下来,将目录更改为 myapp 并使用以下命令启动 Sails 应用程序:

cd myapp
sails lift

我们应该看到以下输出:

 info: Starting app...

 info: 
 info:                .-..-.
 info: 
 info:    Sails              <|    .-..-.
 info:    v1.4.3              |\
 info:                       /|.\
 info:                      / || \
 info:                    ,'  |'  \
 info:                 .-'.-==|/_--'
 info:                 `--'-------' 
 info:    __---___--___---___--___---___--___
 info:  ____---___--___---___--___---___--___-__
 info: 
 info: Server lifted in `/root/myapp`
 info: To shut down Sails, press  + C at any time.
 info: Read more at https://sailsjs.com/support.

debug: -------------------------------------------------------
debug: :: Sun Jun 13 2021 04:33:02 GMT+0000 (Coordinated Universal Time)

debug: Environment : development
debug: Port        : 1337
debug: -------------------------------------------------------

按 CTRL + C 停止 Sails 应用程序。

第 4 步 – 为 Sails.js 应用程序创建一个 Systemd 服务文件

接下来,我们需要创建一个 systemd 服务文件来管理 Sails.js 应用程序。 我们可以使用以下命令创建它:

nano /lib/systemd/system/sails.service

添加以下行:

[Unit]
After=network.target

[Service]
Type=simple
User=root
WorkingDirectory=/root/myapp
ExecStart=/usr/bin/sails lift
Restart=on-failure

[Install]
WantedBy=multi-user.target

保存并关闭文件,然后重新加载 systemd 守护程序以应用更改:

systemctl daemon-reload

接下来,启动 Sails.js 服务并使其在系统重新启动时启动:

systemctl start sails
systemctl enable sails

我们可以使用以下命令检查 Sails.js 服务的状态:

systemctl status sails

我们应该看到以下输出:

● sails.service
     Loaded: loaded (/lib/systemd/system/sails.service; disabled; vendor preset: enabled)
     Active: active (running) since Sun 2021-06-13 04:41:48 UTC; 6s ago
   Main PID: 3730 (node)
      Tasks: 22 (limit: 2353)
     Memory: 114.0M
     CGroup: /system.slice/sails.service
             ├─3730 node /usr/bin/sails lift
             └─3752 grunt

Jun 13 04:41:49 ubuntu2004 sails[3730]:  info:  ____---___--___---___--___---___--___-__
Jun 13 04:41:49 ubuntu2004 sails[3730]:  info:
Jun 13 04:41:49 ubuntu2004 sails[3730]:  info: Server lifted in `/root/myapp`
Jun 13 04:41:49 ubuntu2004 sails[3730]:  info: To shut down Sails, press  + C at any time.
Jun 13 04:41:49 ubuntu2004 sails[3730]:  info: Read more at https://sailsjs.com/support.
Jun 13 04:41:49 ubuntu2004 sails[3730]: debug: -------------------------------------------------------
Jun 13 04:41:49 ubuntu2004 sails[3730]: debug: :: Sun Jun 13 2021 04:41:49 GMT+0000 (Coordinated Universal Time)
Jun 13 04:41:49 ubuntu2004 sails[3730]: debug: Environment : development
Jun 13 04:41:49 ubuntu2004 sails[3730]: debug: Port        : 1337
Jun 13 04:41:49 ubuntu2004 sails[3730]: debug: -------------------------------------------------------

第 5 步 – 将 Nginx 配置为 Sails.js 的反向代理

建议将 Nginx 配置为反向代理,通过 80 端口访问 Sails 应用。

首先,使用以下命令安装 Nginx Web 服务器:

apt-get install nginx -y

安装后,创建一个 Nginx 虚拟主机配置文件:

nano /etc/nginx/conf.d/sails.conf

添加以下行:

server {
 listen       80;
 server_name  sails.example.com;
   location / {
     proxy_pass        http://localhost:1337/;
     proxy_set_header  Host $host;
     proxy_buffering   off;
   }
 }

保存并关闭文件,然后验证 Nginx 是否有任何语法错误:

nginx -t

我们应该看到以下输出:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

接下来,重新启动 Nginx 服务以应用配置更改:

systemctl restart nginx

第 6 步 – 访问 Sails.js Web 界面

现在,打开我们的 Web 浏览器并使用 URL http://sails.example.com 访问 Sails.js 应用程序。 我们应该在以下屏幕上看到 Sails.js 仪表板:
Sails.js 仪表板

恭喜! 你已经成功地在 Ubuntu 20.04 服务器上安装了带有 Nginx 的 Sails.js 作为反向代理。 我们现在可以使用 Sails.js 轻松构建自己的实时应用程序。 立即开始使用我们的专用服务器托管帐户!

© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享
评论 抢沙发

请登录后发表评论