서버에 Soketi 배포

3849 단어 soketiec2laravel
이 게시물에서는 AWS EC2에서 Soketi를 배포하는 방법을 살펴봅니다. 가지고 있는 모든 호스팅에 설치할 수 있습니다.

전제 조건:



• 신선한 EC2 인스턴스 준비

I used EC2 t2.micro



이제 SSH로 연결하고 시작합시다 🚀

1단계: OS 준비 및 도구 설치



서버 패키지를 업데이트합니다.

sudo yum update -y


필요한 도구를 설치합니다.

sudo yum install -y git python3 gcc build-essential


2단계: Nodejs 설치



이 세 가지 명령으로 node js 및 npm 패키지를 설치해 보겠습니다.

Please run one by one



curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash

. ~/.nvm/nvm.sh

nvm install --lts


노드 실행 버전을 확인하려면 다음을 수행하십시오.

node -e "console.log('Running Node.js ' + process.version)"


보셔야 합니다Running Node.js: 1xxxx

3단계: Soketi 설치



이제 다음을 사용하여 서버에 Soketi를 설치해 보겠습니다.

npm install -g @soketi/soketi


4단계: Soketi 서버를 활성 상태로 유지


Supervisor or PM2를 사용하여 소케티를 살리는 두 가지 방법이 있습니다.

자세한 내용은 docs을 확인하십시오.

PM2를 선택하고 설치하겠습니다.

npm install -g pm2


이제 pm2를 사용하여 Soketi를 실행합니다.

pm2 start soketi -- start


더 많은 명령이 디버깅에 유용할 수 있습니다Soketi.

pm2 status
pm2 monit
pm2 logs


5단계: 엔진엑스



기본적으로 포트6001를 사용하는 Soketi를 알고 있으므로 기본 도메인을 방문하는 모든 사람을 위해 서버를 이 포트로 리디렉션하는 방법이 필요합니다. 이를 위해 포트80에서 실행되는 웹 서버가 필요하고 사용자에게 6001이므로 Nginx(프록시)가 이 작업에 적합합니다.

Nginx를 설치합시다:

sudo amazon-linux-extras install nginx1


그런 다음 Nginx를 시작합니다.

sudo systemctl start nginx.service


Nginx의 상태를 확인합니다.

sudo systemctl status nginx.service 


이제 Nginx 구성 파일을 찾아야 합니다. nginx -t와 같은 명령을 사용하여 전체 경로 구성 파일을 제공하거나 /etc/nginx/nginx.conf에서 찾을 수 있습니다.

다음을 사용하여 구성 파일을 엽니다.

sudo vim /etc/nginx/nginx.conf


이제 서버 블록 내부nginx.conf에 프록시를 추가합니다.

server { 
   .......

    location / {
        proxy_pass             http://127.0.0.1:6001;
        proxy_read_timeout     60;
        proxy_connect_timeout  60;
        proxy_redirect         off;

        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;
    }
 }


저장 후 종료:wq :)

프록시를 추가한 후 Nginx를 다시 시작해야 합니다.

sudo systemctl restart nginx.service


이제 퍼블릭 IP를 방문하면 페이지에 OK가 표시되며 이는 서버를 6001인 Soketi 포트로 성공적으로 리디렉션했음을 의미합니다. 🫡

이제 다음과 같이 .env를 편집하여 Laravel 프로젝트에서 공개 IP(http://없이)를 사용할 수 있습니다.

PUSHER_HOST=YOUR_PUBLIC_IP_HERE
PUSHER_PORT=80


이 부분을 위한 것입니다

3부에서는 SSL을 설치하고 Soketi의 구성을 변경하는 방법을 살펴봅니다.

👋

좋은 웹페이지 즐겨찾기