[AWS]Deploy Assignment
IAM 기본 설정
IAM 사용자로 로그인
리전 - 서울
EC2 인스턴스 연결
IAM 로그인을 검색 클릭 -> 연결 클릭 -> Session Manager 연결 클릭
bash
- 터미널은 bash(리눅스 쉘스크립트)로 변경
cd ~
EC2 인스턴스 상에서 서버 실행
인스턴스에 개발 환경 구축
패키지 매니저가 관리하는 패키지의 정보를 최신 상태로 업데이트
sudo apt update
(Advance Packging Tools)
nvm, node.js 설치 필요
먼저 nvm 설치 https://github.com/nvm-sh/nvm#install--update-script 참고
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
nvm이 설치 되었는지 확인 nvm --version
안될시에 source ~/.nvm/nvm.sh
후 다시 시도
nodes.js 설치 nvm install node
npm 설치 sudo apt install npm
git을 통해 서버 코드 클론 받기
홈 디렉토리로 이동, EC2 인스턴스에 코드 클론, git clone을 위해 SSH 등록이 필요
SSH 인증 방법
ssh-keygen
~/.ssh./
에 개인키 id_rsa
와 공개키 id_rsa.pub
생성
cat ~/.ssh/id_rsa.pub
window에서는 C:\Users\choi 에서 .ssh/id_rsa.pub
저 .ssh/id_rsa.pub
의 /는 원화 기호여야함
Github profile -> Settings -> SSH and GPG keys -> New SSH Key 에 이름을 정하고 복 붙
이후 코드 복붙, server 디렉토리로 이동 npm install
sudo npm start
EC2 인스턴스의 IP 주소로 접근하기
인스턴트 요약의
퍼블릭 IPv4 주소 혹은 퍼블릭 IPv4 DNS
으로 들어가면 서버 확인 가능
S3 정적 웹 호스팅
S3에서 버킷 검색 후 클릭
.env에 REACT_APP_API_URL의 값으로 EC2
.env 파일을 따로 제공하지 않는 이유 - .env 파일의 경우 중요 보안 정보를 담고 있는 경우가 많아 .gitignore에 포함하여 외부에 공개하지 않는 것이 원칙
npm install
npm run build
build 디렉터리의 모든 파일을 자신의 버킷의 루트 경로에 삽입
build 바로 안에 있는 파일들은 파일추가로 폴더들은 폴더추가로 추가
속성의 정적 웹 사이트 호스팅
버킷 웹 사이트 엔드포인트 주소로 들아거면 확인 가능
댓글남기기