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

PHPz
풀어 주다: 2023-09-29 19:37:02
원래의
1966명이 탐색했습니다.

简明教程: 如何在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 애플리케이션인 경우 다음 명령을 사용하여 시작할 수 있습니다. rrreeePM2는 다른 명령도 제공합니다. 실행 중인 모든 애플리케이션 나열, 애플리케이션 다시 시작, 애플리케이션 중지 등과 같은 명령. 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!