Elastic Compare Cloud의 약자로 가상화 서버(Virtual Server)를 제공하는 서비스
이러한 가상화 서버를 인스턴스(Instance)라 부르며 여러개의 인스턴스로
손쉽게 서버를 구축할 수 있다.
인스턴스 생성 클릭
OS 설정
인스턴스 유형 설정
보안 그룹 설정
HTTP 및 HTTPS를 허용한다.
+ 프로젝트 로컬환경에서 사용하는 포트도 허용한다.
내부서버에서 사용하는 포트번호도 인바운드 설정에서 열어줘야 합니다.
(x.xxx.xx.xxx:4060 로 접속해서 접속되는지 확인하기!)
키 페어 생성 및 연결
키 페어를 생성하면 키파일이 생성되는데, 해당 키파일이 존재해야만 인스턴스 서버에 접속할 수 있다. 키파일은 한번 잃어버리면 다시 받을 수 없으니 관리를 잘 해야 한다.(프로젝트 폴더에 보관한다면 gitingnore에 반드시 등록해서 유출되지 않도록 해야 한다.)
인스턴스에 접속해서 프로젝트 파일을 다운 받기.
1.Download and import the Nodesource GPG key
$ sudo apt-get update
$ sudo apt-get install -y ca-certificates curl gnupg
$ sudo mkdir -p /etc/apt/keyrings
$ curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
2.Create deb repository
$ NODEMAJOR=20
$ echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node$NODE_MAJOR.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list
3.Run Update and Install
$ sudo apt-get update
$ sudo apt-get install nodejs -y
공식문서의 Installing and Updating 참고
npm i
설치 된 다음 MySQL 계정 만들기
우분투에서는 GUI를 사용하지 않으므로 다음 명령어를 순서대로 입력해 MySQL을 설치합니다. 중간에 sudo mysql을 입력하면 MySQL 프롬프트로 전환되는데, 여기서 MySQL 비밀번호를 설정한다고 보면 됩니다.
$ sudo apt-get update
$ sudo apt-get install -y mysql-server-8.0
$ sudo mysql -u root -p
(MySQL 프롬프트로 전환)
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by '비밀번호';
mysql> FLUSH PRIVILEGES
mysql> quit;
비밀번호가 잘 변경되었는지 MySQL에 접속해봅시다. 접속 방법은 윈도와 같습니다. 한 가지 차이점은 굳이 MySQL이 설치된 폴더로 이동하지 않아도 된다는 것입니다. 경로에 상관없이 콘솔에 mysql -h localhost -u root -p 명령어를 입력하면 됩니다.
$ mysql -h localhost -u root -p
Enter password: [비밀번호 입력]
mysql>
npm i pm2
EC2는 몇분에 한번씩 자동으로 EC2의 아이피주소가 바뀌기 때문에 다른 서버와 지속적을 통신하기 위해서는 IP를 고정시켜야 한다. 탄력적 IP를 구매해서 할당해주어야 IP가 바뀌지 않는다.
도메인주소를 판매하는 사이트로부터 도메인주소를 대여해야 한다. 가비아, afnic 등이 있다.
Route53에서 호스팅 영역 생성하기
호스팅 영역의 레코드 주소 도메인 사이트에 등록하기