SSL, Nginx, PM2를 사용하여 단일 서버에 여러 NodeJS 앱 배포 - 2부
5239 단어 tutorialnodedevopsjavascript
전제 조건
시리즈의 Part 1을 읽으십시오.
우리는 이미 첫 번째 앱에 대해 NGINX, PM2 및 SSL을 설정했으며 새 NodeJS 앱을 설정할 것입니다.
새 앱을 시작하고 실행하기 위해 수행해야 하는 단계가 거의 없습니다.
08단계 - 새 프로젝트 복제 또는 파일로 새로 만들기
새 폴더를 만들고 새 앱을 만들고 다른 포트 번호에서 실행하는 02단계와 매우 유사합니다.
mkdir App2
cd App2
이제 index.js라는 새 파일을 만듭니다.
nano index.js
이제 index.js에 다음 코드를 붙여넣습니다.
const http = require('http');
const hostname = 'localhost';
const port = 4000; //make sure this port no is different from the first one
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello Everyone from APP 2 !\n');
});
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`);
});
09단계 - PM2로 앱 시작
PM2로 앱을 시작하고 선택적 이름을 지정합니다.
pm2 start index.js --name "APP 2"
이렇게 하면 포트 번호 4000에서 앱이 시작됩니다. 다음과 같이 PM2로 실행 중인 모든 앱을 볼 수도 있습니다.
pm2 list
이렇게 하면 ID 또는 이름을 사용하여 시작/중지/다시 시작할 수 있는 실행 중인 모든 앱 목록이 제공됩니다.
10단계 - NGINX로 역방향 프록시 추가
이 앱에 대해서도 서버 구성을 한 번 더 추가해야 합니다.
서버를 업데이트하려면 먼저 구성을 엽니다.
sudo nano /etc/nginx/sites-available/default
이 새 블록을 서버 블록의 위치 부분에 추가합니다.
server_name yourdomain2.com www.yourdomain2.com;
location / {
proxy_pass http://localhost:4000;
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;
}
하위 도메인에서 두 번째 앱을 호스팅하려는 경우
yourdomain2.com
를 api2.yourdomain.com
와 같은 하위 도메인으로 바꾸십시오.그런 다음 NGINX를 확인하고 다시 시작하십시오.
# Check NGINX config
sudo nginx -t
# Restart NGINX
sudo service nginx restart
도메인이 지정되면 포트 80에서 앱이 작동하는 것을 볼 수 있습니다. SSL을 추가하는 단계가 한 단계 더 있습니다.
11단계 - 두 번째 APP용 SSL 추가
이미 certbot이 설치되어 있으므로 추가 도메인을 추가하는 것은 문제가 되지 않습니다.
sudo certbot --nginx -d yourdomain2.com -d www.yourdomain2.com
또는 하위 도메인의 경우
sudo certbot --nginx -d api2.yourdomain.com
그게 전부입니다. 새 앱은 SSL을 사용하여 새 도메인에서 라이브여야 합니다.
건배를 읽어 주셔서 감사합니다.
Reference
이 문제에 관하여(SSL, Nginx, PM2를 사용하여 단일 서버에 여러 NodeJS 앱 배포 - 2부), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/ranjan/deploy-multiple-nodejs-apps-on-single-server-with-ssl-nginx-pm2-part-2-f48텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)