>  기사  >  운영 및 유지보수  >  간결한 튜토리얼: NGINX 및 PM2를 사용하여 VPS 서버에 애플리케이션을 빠르게 배포하는 방법

간결한 튜토리얼: NGINX 및 PM2를 사용하여 VPS 서버에 애플리케이션을 빠르게 배포하는 방법

PHPz
PHPz원래의
2023-09-29 19:37:022059검색

简明教程: 如何在VPS服务器上利用NGINX和PM2实现应用的快速部署

간결한 튜토리얼: VPS 서버에서 NGINX 및 PM2를 사용하여 신속한 애플리케이션 배포를 달성하는 방법

인터넷이 발전함에 따라 점점 더 많은 애플리케이션이 가상 사설 서버(VPS)에 배포됩니다. VPS에 애플리케이션을 신속하게 배포하는 것은 개발자와 운영 및 유지 관리 담당자에게 중요하고 필요한 기술입니다.

이 튜토리얼에서는 일반적으로 사용되는 두 가지 도구인 NGINX와 PM2를 사용하여 VPS 서버에 애플리케이션을 빠르게 배포하는 방법을 안내합니다. 먼저 NGINX와 PM2의 기본 개념과 사용법을 이해해야 합니다.

1. NGINX

NGINX는 고성능 웹 서버이자 역방향 프록시 서버입니다. 높은 동시성 요청을 처리하고 정적 및 동적 콘텐츠에 대한 서비스를 제공할 수 있습니다. 이 튜토리얼에서는 NGINX를 애플리케이션의 진입점으로 사용하고 이를 역방향 프록시 서버로 구성합니다.

NGINX의 설치 방법은 서버 운영 체제에 따라 다를 수 있으며, 귀하의 서버 환경에 따라 적절한 설치 방법을 선택하실 수 있습니다. 설치가 완료되면 NGINX에서 몇 가지 기본 구성을 수행해야 합니다.

먼저 NGINX 구성 파일(예: myapp.conf)을 생성해야 합니다. 이 구성 파일에서는 수신 대기 포트 번호와 도메인 이름은 물론 역방향 프록시가 연결되는 애플리케이션의 주소와 포트 번호도 지정해야 합니다. 다음은 구성 파일 예시의 내용입니다.

server {
    listen 80;
    server_name mydomain.com;

    location / {
        proxy_pass http://127.0.0.1:3000;
        proxy_set_header Host $host;
    }
}

이 예시에서는 애플리케이션 주소와 포트 번호를 http://127.0.0.1:3000으로 설정했습니다. need 이를 애플리케이션의 실제 주소와 포트 번호로 바꾸세요. http://127.0.0.1:3000,实际上你需要将其替换为你应用的实际地址和端口号。

配置文件准备好后,将其保存在NGINX的配置文件目录中(例如:/etc/nginx/conf.d/)。然后,重启NGINX服务,使配置文件生效。

二、PM2

PM2是一个进程管理工具,它能够帮助你在生产环境中简化应用的部署和管理。在这个教程中,我们将使用PM2来启动我们的应用,并确保它在后台持续运行。

首先,我们需要全局安装PM2。你可以通过运行以下命令来进行安装:

npm install -g pm2

安装完成后,我们可以使用PM2来启动我们的应用。假设你的应用是一个Node.js服务器,你可以使用以下命令来启动它:

pm2 start app.js

如果你的应用是一个Express应用,你可以使用以下命令来启动它:

pm2 start bin/www

PM2还提供了一些其他有用的命令,比如列出所有正在运行的应用、重启应用、停止应用等。你可以通过运行 pm2 --help 命令来获取更多关于PM2命令的帮助。

三、部署应用

现在,你已经安装好了NGINX和PM2,并且已经将他们的基本配置完成。接下来,让我们来部署我们的应用。

首先,确保你的应用已经上传到了你的VPS服务器上。然后,在你的服务器上创建一个新的文件夹,用于存放你的应用。

然后,进入到这个文件夹中,并使用 git clone 命令从你的代码仓库中克隆代码。或者,你也可以直接将你的代码文件拷贝进这个文件夹中。

接下来,安装应用所需的依赖。你可以使用 npm install 命令来安装所有的依赖。

然后,使用PM2来启动你的应用。在你的应用目录中,运行 pm2 start app.js 或是 pm2 start bin/www,根据你的实际情况选择适当的启动命令。

最后,使用你的域名访问你的应用,如果一切顺利,你应该能够看到你的应用在浏览器中成功运行。

四、手动更新应用

如果你的应用在运行过程中需要手动更新,只需在你的应用目录中使用 git pull 命令来拉取最新的代码。然后,使用 pm2 restart app 命令来重启应用。

如果你的应用没有使用Git作为版本控制系统,你可以手动将新的代码文件拷贝到应用目录中,然后运行相应的 pm2 restart

구성 파일이 준비되면 NGINX의 구성 파일 디렉터리(예: /etc/nginx/conf.d/)에 저장하세요. 그런 다음 NGINX 서비스를 다시 시작하여 구성 파일을 적용합니다.

2. PM2

PM2는 프로덕션 환경에서 애플리케이션 배포 및 관리를 단순화하는 데 도움이 되는 프로세스 관리 도구입니다. 이 튜토리얼에서는 PM2를 사용하여 애플리케이션을 시작하고 백그라운드에서 계속 실행되는지 확인합니다.

먼저 PM2를 전역적으로 설치해야 합니다. 다음 명령을 실행하여 설치할 수 있습니다.

rrreee

설치가 완료된 후 PM2를 사용하여 애플리케이션을 시작할 수 있습니다. 애플리케이션이 Node.js 서버라고 가정하면 다음 명령을 사용하여 시작할 수 있습니다. 🎜rrreee🎜 애플리케이션이 Express 애플리케이션인 경우 다음 명령을 사용하여 시작할 수 있습니다. 🎜rrreee🎜PM2는 다른 명령도 제공합니다. 실행 중인 모든 애플리케이션 나열, 애플리케이션 다시 시작, 애플리케이션 중지 등과 같은 명령. pm2 --help 명령을 실행하면 PM2 명령에 대한 추가 도움말을 얻을 수 있습니다. 🎜🎜3. 애플리케이션 배포🎜🎜이제 NGINX와 PM2를 설치하고 기본 구성을 완료했습니다. 다음으로 애플리케이션을 배포해 보겠습니다. 🎜🎜먼저 애플리케이션이 VPS 서버에 업로드되었는지 확인하세요. 그런 다음 서버에 애플리케이션을 저장할 새 폴더를 만듭니다. 🎜🎜그런 다음 이 폴더로 이동하여 git clone 명령을 사용하여 코드 저장소에서 코드를 복제하세요. 또는 코드 파일을 이 폴더에 직접 복사할 수 있습니다. 🎜🎜다음으로 애플리케이션에 필요한 종속성을 설치합니다. npm install 명령을 사용하여 모든 종속성을 설치할 수 있습니다. 🎜🎜그런 다음 PM2를 사용하여 애플리케이션을 시작하세요. 애플리케이션 디렉터리에서 pm2 start app.js 또는 pm2 start bin/www를 실행하고 실제 상황에 따라 적절한 시작 명령을 선택하세요. 🎜🎜마지막으로 도메인 이름을 사용하여 앱에 액세스하고 모든 것이 순조롭게 진행되면 브라우저에서 앱이 성공적으로 실행되는 것을 확인할 수 있습니다. 🎜🎜4. 애플리케이션을 수동으로 업데이트하세요🎜🎜애플리케이션이 실행되는 동안 수동으로 업데이트해야 하는 경우 애플리케이션 디렉터리에서 git pull 명령을 사용하여 최신 코드를 가져오세요. 그런 다음 pm2 restart app 명령을 사용하여 애플리케이션을 다시 시작하세요. 🎜🎜애플리케이션이 Git을 버전 제어 시스템으로 사용하지 않는 경우 새 코드 파일을 애플리케이션 디렉터리에 수동으로 복사한 다음 해당 pm2 restart 명령을 실행하여 애플리케이션을 다시 시작할 수 있습니다. 🎜🎜요약🎜🎜간단히 NGINX를 구성하고 PM2를 사용하여 애플리케이션을 배포 및 관리하면 애플리케이션을 VPS 서버에 빠르게 배포하고 프로덕션 환경에서 안정적으로 실행할 수 있습니다. 🎜🎜실제 배포 프로세스 중에 보안, 성능 최적화, 로드 밸런싱 등과 같은 다른 문제도 고려해야 할 수도 있습니다. 하지만 이 튜토리얼에서는 가장 기본적인 배포 방법에만 중점을 둡니다. 🎜🎜이 튜토리얼이 VPS 서버에 애플리케이션을 배포하는 데 도움이 되기를 바랍니다. NGINX 및 PM2 사용에 대해 궁금한 점이 있으면 공식 문서에서 자세한 내용을 읽어 보시기 바랍니다. VPS 배포에 행운이 있기를 바랍니다! 🎜

위 내용은 간결한 튜토리얼: NGINX 및 PM2를 사용하여 VPS 서버에 애플리케이션을 빠르게 배포하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.