아마존 aws 인스턴스 생성 및 해제(next.js)

개발공부·2022년 11월 22일
0

React 공부하기

목록 보기
8/14

* aws 인스턴스 해제 방법

https://extsdd.tistory.com/259
(사용 안 하는데 인스턴스 계속 연결하면 매달 돈 나감...ㅎ)
인스턴스 중지나 종료 누를 것

* aws 연결

1) 로그인 후 인스턴스 생성(프리티어 있는 걸로)

2) 키 페어는 만들고 보관하기(git에 올리면 안 됨.. 절대 안 됨;)

3) 네트워크 생성에서 보안그룹 만들기(ssh, http, https)

4) 각각 소스 유형을 '사용자 지정'으로 생성 후 원본을 0.0.0.0/0으로 연결

→ [ 인스턴스 시작 ] 누르기

5) 인스턴스 생성 후 인스턴스 클릭 후(체크박스) 연결 누르기

처음 인스턴스 생성 시 설정한 키 페어를 프로젝트 안에 넣고(git에 올리지 말기) 키 페어가 있는 곳에서 아래의 주소(SSH 클라이언트의 예:) 복사해서 넣기

SSH 클라이언트에서 예: 아래에 있는 주소 복사
(vs code에서 aws 연결하기 위함)

6) 소스 코드가 있는 폴더로 터미널 이동

▶ 6) 실행 전 git 레포지토리가 있어야 함

git clone 자신의 git 주소

폴더 여부 확인 : ls

폴더 이동 : cd 폴더명

git에서 수정 후 다시 받아올 때 : git pull origin main(아님 master)

7) aws에 node.js 설치하기

▶ $은 빼고 작성할 것(터미널에는 복사가 잘 안 되므로 되도록 직접 타이핑하는 것을 권장)

$ sudo apt-get update
$ sudo apt-get install -y build-essential
$ sudo apt-get install curl
$ curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash --
$ sudo apt-get install -y nodejs

8) 설치 후 node.js, npm 설치 확인

node -v
npm -v

* ubuntu에 mysql 설치

https://awakening95.tistory.com/2

* root 관련 오류가 생기는 경우

▶ ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '바꾸길 원하는 비밀번호';

* .env가 없어서 생기는 오류

.env 만들기
1) vim .env
2) i 누르고 입력하기
3) esc 버튼 누르기
4) 저장하기는 :wq

.env 확인
▶ ls -a

.env 안의 내용 확인
▶ cat .env

package.json 내용 확인(폴더까지 이동)
▶ cat package.json

* mysql이 설치된 폴더에서 sequelize 가져오기

▶ npx sequelize db:create

* mysql 접속하기

mysql -u root(아이디가 다른 경우 다른 아이디 입력) -p
비밀번호 입력

* mysql 나가기

exit;

* aws 인스턴스 내 네트워크 보안 그룹에서 처음 설정한 부분 : 80

▶ 프로젝트 작성 시 포트 번호 : 3065
▶ 변경 필요함(본인의 경우 app.js)

[수정 전 app.js]

const express = require("express");
....

const app = express();

...

app.listen(3065, () => { //여기 부분을 80으로 바꿀 것
  console.log("서버 실행 중");
});

vim app.js
i
3065부분 80으로 바꿈 -> esc 버튼 -> :wq

* aws 인스턴스 내 퍼블릭 IPv4 주소로 접속해보기

▶ 정상적으로 동작함

profile
개발 블로그, 티스토리(https://ba-gotocode131.tistory.com/)로 갈아탐

0개의 댓글