下面是 “Linux下部署nodejs项目(两种方式)” 的完整攻略。
方式一:使用pm2部署
PM2 是一个 Node.js 的进程管理工具,可以帮助我们简化 Node.js 应用程序的部署和管理。 使用pm2部署nodejs项目的步骤如下:
1. 安装PM2
可以使用npm来安装:
npm install -g pm2
2. 启动nodejs应用
我们假设已经有一个简单的 Node.js 应用程序,我们可以使用以下命令来启动它:
node app.js
3. 使用PM2部署nodejs应用
使用以下命令来部署nodejs应用:
pm2 start app.js
此命令将启动应用程序并将其注册为在系统重新启动时自动启动的进程。我们可以使用以下命令来查看所有正在运行的应用程序:
pm2 ls
4. 配置PM2
在PM2应用程序的目录下,执行以下命令:
pm2 startup systemd -u root --hp /root
这将生成一个 systemd 服务文件,使得当系统重新启动时,自动重新启动我们的应用程序。
5. 重启PM2
我们需要重启PM2来使其加载新的配置文件。执行以下命令来重启PM2:
pm2 reload
现在,我们的应用程序已经被部署,可以在“http://localhost:3000”上进行访问。
方式二:使用Docker部署
Docker 是一个开源的容器化平台,可以帮助我们快速、方便地构建、打包、部署应用程序。 使用Docker部署nodejs项目的步骤如下:
1. 安装Docker
我们需要首先在我们的服务器上安装 Docker。可以使用以下命令来安装:
apt-get update
apt-get install docker.io
2. 创建Docker镜像
在我们的应用程序目录下,创建一个Dockerfile 文件,内容如下:
FROM node:10
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 3000
CMD [ "npm", "start" ]
在执行以下命令,创建Docker镜像:
docker build -t my-app-image .
这将会创建一个名为 my-app-image 的 Docker 镜像。
3. 运行Docker容器
我们可以执行以下命令来运行我们的Docker容器:
docker run -p 3000:3000 -d my-app-image
这将会在容器中运行我们的应用程序,并映射Docker容器的3000端口和主机的3000端口。
现在,我们的应用程序已经被部署,可以在“http://localhost:3000”上进行访问。
示例说明
示例一:使用pm2部署
假设我们的应用程序名称是 my-app,我们可以使用以下命令来部署它:
cd ~/my-app
node app.js
pm2 start app.js
我们可以使用以下命令来查看所有正在运行的应用程序:
pm2 ls
示例二:使用Docker部署
我们在应用程序目录下创建 Dockerfile 文件并写入以下内容:
FROM node:10
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 3000
CMD [ "npm", "start" ]
接下来,我们执行以下命令,创建Docker镜像:
docker build -t my-app-image .
最后,我们使用以下命令来运行Docker容器:
docker run -p 3000:3000 -d my-app-image
这将会在容器中运行我们的应用程序,并映射Docker容器的3000端口和主机的3000端口。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:linux 下部署nodejs项目(两种方式) - Python技术站