AWS ec2로 배포하기

강보석·2021년 8월 2일
0

✨준비하기

AWS는 웹을 배포할 때 가장 많이 쓰는 클라우드 컴퓨팅 사이트입니다. 웹을 배포하는 데 필요한 서버를 제공하고 시간 당 쓴 서버 스펙에 걸맞는 돈을 지불하게 합니다. 처음 회원가입할 때 결제할 카드를 써야하니 자기도 모르는 새 큰 돈이 나갈 수 있으니 주의하세요.

처음 가입하게 되면 free tier라고 1년 간 여러가지 혜택을 주는데 그 중 t2.micro라는 ec2를 달마다 750시간을 쓰게 해줬던 걸로 기억합니다. 웹을 배포하려면 이 ec2를 쓸 줄 알아야합니다.

먼저 ec2를 만들었다고 가정하고 설명을 시작하겠습니다.

ec2에 연결하려면 vscode 터미널로 연결하거나 윈도우 같은 경우는 putty나 xshell을 이용해서 연결을 합니다.

연결을 하면 ec2를 만들었을 때 ubuntu를 선택했냐 혹은 윈도우를 선택했냐에 따라서 다른 화면이 나올텐데 저는 ubuntu를 선택했습니다.

✨세팅하기

🎐Node.js 다운

우분투에 접속하면 일단 기본적인 세팅을 해주어야 합니다. 저는 node로 웹을 만들었기 때문에 node를 다운받아야 합니다.

sudo apt-get update
sudo apt-get install -y build essential
sudo apt-get install curl //curl이 이미 깔려있을 경우 필요 없음
curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash --
sudo apt-get install -y nodejs

이 명령어를 입력하고 node -v, npm -v를 입력해서 버전 정보가 나오면 정상적으로 node가 깔린 것입니다.

🎐코드 가져오기

그 후엔 코드들을 갖고 와야 하는데 github을 이용한 방법이 가장 편한 것 같습니다. 코드들을 github 레포지토리에 푸시하고 ec2에서 'git clone 해당경로'를 통해 코드를 가져옵니다. 그 후엔 package.json이 있는 폴더로 들어가 npm run start같은 명령어를 입력하면 배포가 완료가 됩니다.

그 외에 backend같은 경우는 데이터베이스도 필요할 수 있습니다. 저는 mysql을 써서 mysql을 다운 받는 법을 쓸 거지만 다른 것들은 구글에 입력하면 나올 겁니다.

MySql 다운 및 설정

기본적으로 mysql을 깔면 아마 5버전으로 다운이 될텐데 저는 8버전을 쓰고 싶기 때문에 그에 맞는 명령어를 가져왔습니다.

wget -c https://repo.mysql.com//mysql-apt-config_0.8.13-1_all.deb
sudo dpkg -i mysql-apt-config_0.8.13-1_all.deb
sudo apt update
sudo apt-get install mysql-server

아마 이 과정에서 설정하는 설명문이 나올텐데 영어를 조금이라도 하실 줄 아신다면 큰 어려움을 없을 겁니다.

이제 비밀번호를 설정해야합니다.

sudo su
passwd root
비밀번호 입력 후 exit;
sudo mysql_secure_installation
mysql -uroot -p
ALTERUSER'root'@'localhost'IDENTIFIED WITH mysql_native_password BY'비밀번호';

이렇게 하면 mysql 설치도 완전히 끝납니다. 참고로 .env 같은 파일은 레포지토리에 올리지 않았기 때문에 수동으로 만들어야 합니다.

원래 .env가 있어야할 폴더에 들어간 뒤 vim .env로 파일을 만든 후 i를 눌러 내용을 쓰신 후 esc를 누르고 :wq을 하면 저장하고 나가집니다.

그렇게 한다음 평소에 하는 것처럼 npm run start 같은 명령어로 실행시켜주시면 됩니다.

여기까지 ec2로 웹을 배포하는 법이었습니다.

profile
안녕하세요. 컴퓨터를 공부하는 학생입니다.

0개의 댓글

관련 채용 정보