Amazon Elastic Compute Cloud
다양한 오에스버전의 가상서버를 제공하는 아마존 웹서비스
인스턴스 생성
1. EC2에서 사용할 os머신 설정 (프리티어 버전 우분투 18.04 64bit)
2. CPU 메모리 등 서버의 규모 선택 프리티어 t2.micro선택
3.인스턴스 구성
- virtual pirvate cloud AWS 가상 전용 네트워크 : 아이피 주소를 기반으로 한 논리적인 네트워크 공간 구성가능, 방화벽 접근제어 설정가능케 해준다.
- 퍼블릭ip 자동할당 : 동적으로 공인아이피 부여, EC2 인스턴스 재시작시 자동으로 변경 추후 고정아이피를 사용하려면 Elastic아이피설정
- 종료방식 :
중지: 인스턴스 셧다운시에 os 정지 >> os이미지 보존 재시작시 다시 시작
종료: os종료 동시에 EC2인스턴스 삭제된다
종료방지기능 활성화
4.스토리지 추가
EBS(Elastic Block Storage) EC2마운트에서 사용하는 스토리지 타입이다.
5.태그 추가
키, 밸류 부여
6. 보안그룹구성
- EC2에서는 http, https 접속을 허용하여야하는데 그러기위해선 규칙추가를 해줘야한다.
- 기본적으로 모든 아이피주소로부터 ssh에 접속허용되어있다.
- EC2에서 포트 8000으로 웹서버를 돌리고 API호출이 되게 하려면 포트8000에 어떤 IP든 접속 할 수 있게 설정 추가해줘야한다
키페어 지정 후 펜딩
aws 아이피 주소 복사 후 하단
ssh -i key이름.pem ubuntu@나의 aws ip주소
curl -sL <https://deb.nodesource.com/setup_14.x> | sudo bash -
sudo apt-get update
sudo apt-get install nodejs
git clone 프로젝트_repo_주소
cd 프로젝트_repo_주소
npm install
vi server.js
// insert 모드로 아래 코드 복사 붙여넣기
const http = require("http");
const express = require("express");
const path = require("path");
const app = express();
const port = 8000; // 포트번호는 설정값과 맞추기
app.get("/ping", (req, res) => {
res.send("pong");
});
app.use(express.static(path.join(__dirname, "build")));
app.get("/*", (req, res) => {
res.set({
"Cache-Control": "no-cache, no-store, must-revalidate",
Pragma: "no-cache",
Date: Date.now()
});
res.sendFile(path.join(__dirname, "build", "index.html"));
});
http.createServer(app).listen(port, () => {
console.log(`app listening at ${port}`);
});
npm install express --save
npm run build
node server.js
맥북 발열, CPU 부하 원인 nprotect(nProtect Online Security) 삭제 uninstall (0) | 2022.05.09 |
---|---|
[web]Database RDBMS (0) | 2021.12.18 |
클라우드와 AWS (2) | 2021.12.15 |
TIL [VSCode] prettier 적용 오류, 초기화 (0) | 2021.11.18 |
img tag 와 background img 차이 (0) | 2021.11.02 |