TIL 23_01_12

YES31·2023년 1월 11일
0

TIL

목록 보기
15/35
post-thumbnail

아래 내용들은 최종프로젝트를 진행하면서 테스트를 하기위해 테스트 서버를 여는 과정의 명령어들을 순서대로 나열한 것이다.

명령에 대해 자세하게 쓰지는 않겠지만 간단한 설명만으로도 누군가에게 도움이 되길 바란다.(사실상 거의 나의 메모 이다..)


순서
EC2 인스턴스 생성 -> 가비아(도메인)등록 -> certbot(EC2 버전에 해당하는 명령어들을 받아서 실행)
-> pm2 설정

sudo iptables -t nat -F; // IP 테이블(포트 80 -> 5000으로 연결해주는 설정) 초기화,
                         //NGINX에서 할 것이기 때문에 초기화 해줍니다.

sudo apt update; sudo apt install nginx; // apt 업데이트 후 NGINX 설치
sudo service nginx start; sudo service nginx status; // NGINX 켜지는지 확인
sudo snap install core; sudo snap refresh core; // snap 설치
sudo apt remove certbot; // apt로 설치된 certbot이 있을 수도 있으니 미리 삭제
sudo snap install --classic certbot; // snap을 통해 certbot 설치
sudo ln -s /snap/bin/certbot /usr/bin/certbot; // certbot 설정 파일 연결
sudo nano /etc/nginx/sites-available/default;   // NGINX 설정 파일 열기
// default 파일에서 수정해야되는 부분
server_name sparta-yes.shop;
location / {
    proxy_pass http://localhost:3000;
    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;
    proxy_cookie_path / "/; SameSite=None; HTTPOnly; Secure";
}
sudo nginx -t; // NGINX 설정 파일 문법 확인
sudo service nginx restart; // NGINX 재시작
sudo certbot --nginx; // certbot으로 NGINX용 인증서 발급
// 위에 안되면 sites-enabled에 설정 파일이 없는 겁니다
// 아래 명령어로 sites-enabled에 sites-available의 default 파일 연결 만들어 줍니다
sudo ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/;

Git Bash 작업

<keyname>.pem 을 저장한 위치로 찾아가서
$ ssh -i ./<keyname>.pem ubuntu@<EC2 인스턴스 주소>

//이후 server를 설치할 위치를 잡은 후
$ sudo apt install curl
$ curl --silent --location https://rpm.nodesource.com/setup_18.x | sudo bash -
$ sudo npm install -g npm 
$ sudo npm install -g pm2

pm2 명령어

$ pm2 list
동작중인 pm2 확인
$ pm2 kill
동작중인 pm2 전부 종료
$ pm2 restart <id>
id에 해당하는 pm2 재시작
$ pm2 log
서버의 로그 확인

profile
🏀 주니어 개발자

0개의 댓글