react 프로젝트를 aws ec2 배포시 오류해결 ( 80포트)..(스테픈 2km 완)
이번 프로젝트는 목표가 AWS EC2를 사용하고 db는 aws rds 를 사용해서 배포를 해보는 겁니다
그러기 위해서 node js를 사용해서 서버를 만들고
배포할 사이트를 만들었습니다
저번 포스팅에서도 살짝씩 올렸던 사이트가 제 개인 포트폴리오를 모아보는 프로젝트인데요
아무튼 이번에는 배포부터 db연동까지 할게 참 많아서
바쁘네요 react도 이제 겨우 사용법을 익혀가는데 말입니다..

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
아니 좀전까지 잘만 되던 aws 키가 갑자기 먹통이 되네요
원인은 읽어보니 이해는 가지만...
일단 이것부터 수정해야겠군요
문제의 그 파일 pem파일을 우클릭해서 속성보기에서 보안탭에
이동합니다
여기서 고급에 들어가서
상속 사용을 해지하구요
다 지운뒤 추가에서
본인 계정 하나만 추가해주면 됩니다.
다시 접속해보면 문제없이 성공하네요
aws ec2로 배포를 해보려고 하다보니 몇가지 우여곡절이 있었는데요
그중 오늘 겪었던 문제는
바로 컴파일링이 안된다고 오류가 발생한 점입니다.
캡쳐를 깜빡 했는데요
생각해보면 단순한데 처음 aws로 배포를 해보다보니 생각지도 못한 오류여서 난감했었네요
제 컴퓨터에서는 npm run build 명령을 입력시 build가 무사히 진행되는데
aws에서는 build 진행시 서버가 터져버립니다
컴파일이 진행되다가 멈추면서 오류가 발생하죠
이게 무슨 문제일까 엄청 고민했는데
이거 문제였습니다.
물론 지금 캡쳐한 사진은 버전을 업데이트를 한 사진이고
처음 세팅할때
sudo apt-get npm install 로 설치를 진행했었는데요
잘 설치되고 node도 잘 실행되서 아무생각 없었는데
계속 오류가 나서 마지막으로 버전을 확인해보니..
기본적으로 npm install로 진행하면 버전이 node는 12버전이 설치되더군요.;;
제가 현재 사용중인 20 버전으로 설치해주기 위해 구글링을 좀 했습니다
yum install curl
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash
위 명령어를 입력해서 nvm을 먼저 설치를 해준뒤
. ~/.nvm/nvm.sh
위 명령어로 활성활르 시키고
nvm install --lts
이걸 입력해서 node 20버전을 설치했습니다
이제 서버를 띄워서 홈페이지를 돌려야하니 80포트를 써야하는데
server.js파일에 포트를 80으로 바꾸면 이상하게 권한이 없단는 오류가 나옵니다
error : listen eacces : permission denied 0.0.0.0:80
다시 포트를 변경하면 정상동작하는데
구글링을 좀 해보니 80번 포트는 node로 사용할 수 없는것 같군요..
몇가지 알게된 부분은 권한이 없어서 발생하는 오류로 보입니다
권한을 주려면
sudo node server.js로 서버를 구동시키면 실행이 될것 같은데요
해당 커맨드가 먹히질 않네요
그래서 root 계정으로 넘어가 보겠습니다
sudo su
입력해서 node server.js 실행
내용을 읽어보니 node가 설치가 되지 않아서 발생하는 문제로 보입니다
sudo update 입력하고
sudo apt install nodejs 입력해서 설치합니다
설치가 되다 말고 오류가 나네요
이유는 노드를 설치하다가 설치 실패해서 파일이 깨져있나봅니다
내용을 읽어보니 sudo apt autoremove를 사용해서 해당 내용을 삭제하라고 쓰여있습니다
해당 커맨드를 실행하니
정상적으로 삭제후 다시 설치가 되는군요
여기서 node server.js 실행하니 포트 80번에서도 정상 실행됩니다.
이로서 aws에서도 80포트로 배포가 가능하군요
다행입니다.
오늘도 스테픈 2km완료
휴 이제 쉬어야죠











안녕하세요 스팀잇 코리아팀입니다.
스팀잇 코리아팀이 보다 나은 서비스를 제공하기 위해서 협의체로 진화를 하고 자합니다. 자세한 내용은 아래의 포스팅을 참고해주세요
스팀잇 발전을 위해서 한국협의체 회원이 되어 주세요
스팀잇코리아가 현재 하고 있는 일은 다음과 같습니다
-스팀 증인 노드
-스팀잇 좋은글 추천 서비스
-스팀 오토 시스템(보팅 및 포스팅)
-공익사업 (support-kr/goodpost-kr/booming-kr)
-스팀 페스트 코리아 주관
향후 한국협의체로 발전하여 추가 사업으로 확대 운영할 예정입니다.
-스팀 재단과 직접 커뮤니케이션을 통한 한국 스티미언 보이스 전달
-스팀 관련 공익 Dapp/App 개발 지원 및 개발자 육성
-스팀잇 유저 확대를 위한 전방위적 스팀잇 홍보
-kr 커뮤니티 내 의사조정자 역할
-컨텐츠 발굴을 위한 지원 사업
-기타 스팀 가치 제고를 위한 여러 활동
해당 활동은 새롭게 만들어지는 한국협의체의 방향에 따라 일부 변경 될 수 있습니다.
해당 포스팅은.... 딱 3일간만 홍보하겠습니다. 죄송합니다! 블록체인 스팀잇의 주체는 재단이 아닙니다. 스팀에 투자하고 스팀잇 활동을 하는 우리 모두가 주체가 됩니다. 모두 힘을 모아서 발전 할 수 있는 스팀잇을 위해 노력합시다 도와주세요