手把手教你把nodejs部署到linux上跑出hello world

yizhihongxing

让我为你详细讲解怎样通过手把手教程,把Node.js部署到Linux上跑出Hello World的完整攻略。

准备工作

在开始部署之前,需要确保你的Linux系统已经安装好Node.js运行环境。如果没有安装,可以参考官方文档在线安装或下载安装包手动安装。

步骤一:创建工作目录

首先,我们需要在Linux系统上创建一个工作目录,用来存放相关文件及源代码。在终端中执行以下命令:

mkdir myapp && cd myapp

命令解释:通过 mkdir 命令在当前目录下创建一个 myapp 文件夹,并通过 cd 命令进入该目录。

步骤二:初始化Node.js项目

在工作目录中运行以下命令,初始化Node.js项目:

npm init -y

命令解释:通过 npm init -y 命令初始化项目,并使用默认选项。

步骤三:创建Express应用

接下来,使用以下命令安装 Express 应用所需要的依赖:

npm install express --save

命令解释:通过 npm install express --save 命令安装 Express,并声明保存到项目的依赖中。

然后,在项目根目录下创建一个 app.js 文件,并编写以下示例代码:

const express = require('express');
const app = express();

app.get('/', (req, res) => {
  res.send('Hello World!');
});

app.listen(3000, () => {
  console.log('Example app listening on port 3000!');
});

代码解释:

  • 使用 require 加载 express 模块。
  • 创建 express 应用实例。
  • 创建一个路由,对于根路径 /,返回响应 Hello World!
  • 通过 app.listen() 方法,设置应用监听端口为3000。

步骤四:运行应用程序

运行以下命令,启动应用程序:

node app.js

命令解释:通过 node app.js 命令启动应用程序,这将打开一个监听端口为3000的Express应用程序。

现在,你可以在浏览器中访问 http://localhost:3000/,看到输出 Hello World!

示例一:使用PM2管理应用进程

这里介绍一种常用的方法,利用PM2工具来管理Node.js应用。

首先,需要全局安装PM2:

npm install pm2 -g

安装完成后,可以使用以下命令启动应用程序:

pm2 start app.js

命令解释:使用 pm2 start 命令启动 app.js 应用程序。

可以使用以下命令查看应用程序的状态:

pm2 status

命令解释:使用 pm2 status 命令来查看应用程序的状态。

此外,还可以使用以下命令停止应用程序:

pm2 stop app.js

命令解释:使用 pm2 stop 命令停止 app.js 应用程序。

示例二:使用Nginx反向代理

当我们在生产环境中部署应用程序时,通常需要使用反向代理来将请求转发到Node.js服务器上。

首先,需要安装Nginx:

sudo apt-get install nginx

安装完成后,进入Nginx配置目录 /etc/nginx/sites-available/ ,使用以下命令创建一个新的网站文件:

sudo nano myapp

然后,输入以下配置信息:

server {
    listen 80;
    server_name example.com;
    location / {
        proxy_pass http://localhost:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}

配置解释:

  • listen: 指定监听端口为80。
  • server_name: 指定服务的域名。
  • location: 指定Nginx的一个location配置,用于定义转发的路径和网站地址。
  • proxy_pass: 指定转发到的Node.js服务器地址和端口号(这里是 localhost:3000)。
  • proxy_http_version: 指定HTTP协议版本。
  • proxy_set_header: 设置HTTP请求头信息。

保存文件后,需要在Nginx上启用这个网站文件:

sudo ln -s /etc/nginx/sites-available/myapp /etc/nginx/sites-enabled/

最后,需要重新启动Nginx来应用新的配置:

sudo systemctl restart nginx

现在,你可以在浏览器中访问 http://example.com,看到输出 Hello World!

到这里,我们就完成了把Node.js部署到Linux上跑出Hello World的完整攻略,同时还介绍了两个小示例。希望对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:手把手教你把nodejs部署到linux上跑出hello world - Python技术站

(0)
上一篇 2023年5月24日
下一篇 2023年5月24日

相关文章

  • linux简单命令8—用户登录查看命令

    ———————————————————————————————————–    ctrl+z它放到后台,还在耗资源要少用,所以尽量不用它。      

    Linux 2023年4月12日
    00
  • c++程序判断系统是Linux还是Windows

      用C++来实现,本来想了很多,后来越写越烂,而且结果总是不尽人意,干脆这样子好了: 1 int main() { 2 int judge = system(“cls”); 3 if(judge == 0) cout << “Windows!” << endl; 4 else cout << “Linux!” <&…

    Linux 2023年4月13日
    00
  • Linux 定时任务的配置

    通常我们会需要定时启动一些shell脚本,类似Windows中的Task Scheduler, 下面是在AWS EMR Cluster 主几点上配置的步骤: 1. 先创建一个shell脚本,将需要执行的任务写入脚本   vi  testcron.sh 2. 修改该脚本的权限,添加执行权限:   chmod a+x testcron.sh 3. 配置cront…

    Linux 2023年4月16日
    00
  • [Linux] centos6.5升级安装的supervisor

    因为我要用它来管理多个PHP进程去执行任务,在默认版本下的配置多个子进程不起作用 默认版本的supervisor版本比较低2.1.9,对于运行多个子进程貌似有问题,最新版的supervisor4.1的又因为需要高版本的python才行,所以才有了下面的解决办法 先安装pipyum install python-pip再用pip安装3.1版本的supervis…

    Linux 2023年4月13日
    00
  • yum安装(卸载)本地rpm包的方法

    下面是关于“yum安装和卸载本地rpm包”的完整攻略。 1. yum安装本地rpm包的方法 yum可以通过本地rpm包进行安装软件。具体步骤如下。 步骤1:上传本地rpm包到服务器 使用scp命令或者其他方式将本地rpm包上传到服务器上。例如我们上传一个名为software-1.0.0-1.x86_64.rpm 的rpm包到服务器的/tmp目录下。 scp …

    Linux 2023年5月14日
    00
  • 在 RHEL8 /CentOS8 上建立多节点 Elastic stack 集群的方法

    在RHEL8/CentOS8上建立多节点Elasticstack集群的完整攻略如下: 1. 安装Java 首先需要在所有节点上安装Java。在RHEL8/CentOS8上可以使用以下命令安装OpenJDK 11: sudo dnf install java-11-openjdk-devel 2. 安装Elasticsearch 2.1. 准备Elastics…

    Linux 2023年5月14日
    00
  • broadcom Ethernet BCM57412 驱动更新记录(dkms方式)

    一 背景 现场Dell R740xd2机器使用网卡Broadcom 57412 10Gb SFP+,固件版本22.21.06.80。bnxt_en.ko内核模块是该网卡的驱动,我们默认的驱动版本为1.8.0,而固件版本22.21.06.80需要1.10.2的driver。 本文主要是记录一些操作步骤,后续出现类似驱动过旧的问题可以快速解决。 二 临时解决 现…

    Linux 2023年4月8日
    00
  • 详解CentOS 6.4下PXE+Kickstart无人值守安装操作系统

    详解CentOS6.4下PXE+Kickstart无人值守安装操作系统 PXE+Kickstart实现无人值守安装操作系统是快捷、高效的操作系统安装方式,适用于大规模、批量安装服务器操作系统。 PXE服务端的搭建 安装TFTP服务端 在CentOS 6.4中,可以使用yum进行TFTP服务端的安装。 yum install tftp-server 安装完成后…

    Linux 2023年5月14日
    00
合作推广
合作推广
分享本页
返回顶部