private 레포지토리에 접근하기 위해 설정을 해주어야한다.
AWS EC2에서 ubuntu를 연결하고
ssh-keygen -t ed25519 -C "코멘트입력" -f ~/.ssh/id_ed25519 -N ""
위 코드를 입력한다. "코멘트 입력" 부분은 자유롭게 작성하면 된다.(따옴표 포함)
그러면 아래의 문구와 함께 키를 시각적으로 보여준다.
The key's randomart image is:
이상한 그림
실행하고 나면 id_ed25519 / id_ed25519.pub 두 파일이 ~/.ssh 폴더에 생긴다.
cat ~/.ssh/id_ed25519.pub
위 명령어를 입력하면 'ssh-ed25519 AAAAC3Nza...' 로 시작하는 한 줄짜리 문자열이 출력
위 문자열을 GitHub 레포의 Settings → Deploy keys → Add deploy key 에 붙여넣기
title은 아무렇게나 짓고 key에 입력 그리고 Allow write access → 체크 안 함 (읽기 전용)
ssh -T git@github.com
위 코드 입력(GitHub에서 SSH 접속용 전용 계정)
Are you sure you want to continue connecting (yes/no/[fingerprint])?
위 질문에 yes
git clone git@github.com:아이디/레포지토리.git
내 레포지토리의 ssh 부분을 복사해서 연결하기
# 1) 패키지 업데이트
sudo apt-get update
# 2) 필수 빌드 도구 (native 모듈 대비)
sudo apt-get install -y build-essential python3 git
# 3) Node.js LTS 설치 (NodeSource 사용, NVM 불필요)
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
# 4) 버전 확인
node -v
npm -v
만약 레포지토리 내 특정 폴더만 필요하면 거기로 들어간다.
레포지토리 이동 후
nano .env
.env 파일 생성
환경변수 입력 후
Ctrl+O → Enter → Ctrl+X 로 저장하기
수정도 같은 방법으로 간으
Express 백엔드를 EC2에서 상시 돌리고 싶다면 pm2 같은 프로세스 매니저를 설치
sudo npm install -g pm2
설치 확인
pm2 -v
npm 설치
npm install
실행
npm run build
내부 :
curl -i http://127.0.0.1:3001/healthz
위 명령어를 입력하여 HTTP/1.1 200 OK 와 ok 가 뜨면 정상
외부 :
http://<EC2-퍼블릭IP>:3001/healthz
브라우저나 로컬 터미널에서 위 경로 입력
규칙 추가(Add rule):
Type: Custom TCP
Port range: 3001
Source: