TIL 230830(수)_ terminal

박지은·2023년 8월 30일
0

TIL

목록 보기
13/36

오늘은 레벨 1 과제를 제출하는 날로 과제를 수행하느라 정신 없었는데,
오랜만에 다시 github을 사용하고 터미널을 이용해서 aws 배포까지 진행하는데
너무 많이 버벅거렸다.

• 터미널 사용법
• terminal CLI command
• - mkdir 폴더명 : 폴더 생성
• - cd 폴더명 : 폴더 이동
• - cd .. : 상위 폴더로 이동
• - ls : 폴더 내부의 파일 목록 출력
• - ls -al : 숨김 파일 포함 모든 파일 목록 출력
• - ls -a : 숨김 파일 목록 출력
• - cp 파일명 새파일명 : 파일 복사
• - cp -r 폴더명 새폴더명 : 폴더 복사
• - rm 파일명 : 파일 삭제 (remove의 약자)
• - rm -rf 폴더명 : 폴더 삭제 (remove, -recursive, force)

아래 내용의 출처는 종훈님!

클라이언트 - 서버
클라이언트에서 모든 기능을 다 할수도 있지만, 그렇게되면 너무 기능이 클라이언트에 집중되고, 부하도 큼. 보안상 문제도 좋지 않음
따라서 서버는 클라이언트에서 보내는 요청을 처리하고, 응답하는 역할
그러니까 유저가 요청을 보내면 (req) 요청에 맞춰서 응답을 해주면 됨.(res)
유저가 보내는 요청 = req.body / req.params / req.query으로 받을 수 있음!
1. 프로젝트 시작 (package.json 추가)
yarn init -y
/ package.json에 추가해야 될 내용 /
"scripts": {
"start": "nodemon app"
},
"type": "module",
2. 의존성 패키지 설치
yarn add express nodemon mongodb mongoose
3. app.js
Express 공식문서에서 Hello World 코드 가져오기
/ 유저의 요청을 서버에서 json형식으로 받을 수 있게 해주는 미들웨어 추가해야함 /
app.use(express.json())
4. mongodb 연결 // mongoose docs 참고
import mongoose from "mongoose";
mongoose.connect(process.env.MONGODB_URI);
5. dotenv 설치(민감한 정보들 .env 파일에 저장)
yarn add dotenv
/ app.js에 추가해야 되는 내용 /
import { config } from 'dotenv';
config(); // 이 자리에 process.env에 등록한친구가 나와요 process.env를 사용하려면 이 코드 아래에!!
6. mongoose schema
/ Posts 스키마 예시 /
import mongoose from "mongoose";
const postsSchema = new mongoose.Schema(
{
user: {
type: String,
required: true,
},
password: {
type: String,
required: true,
},
title: {
type: String,
},
content: {
type: String,
},
},
{
timestamps: true,
}
);
export default mongoose.model("Posts", postsSchema);
7. CRUD 코드 작성 후 github에 push
8. EC2 인스턴스 설치 후 ssh인증서(EC2 생성할때 발급받은 .pem 파일)로 Ubuntu 컴퓨터에 접속
.pem 파일이 있는 곳으로 이동한 후 명령어를 입력해주세요
chmod 400 <펨 파일이름>
접속하는 명령어는 EC2 콘솔의 오른쪽 위에 '연결' => SSL
보안그룹에서 서버에서 저희가 실행할 서버 포트를 꼭 열어주셔야 합니다!!!
8-1. NodeJs 설치
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt-get install -y nodejs
8-2. Node.js, npm 설치 확인
node -v
npm -v
8-3. 배포할 프로젝트 깃에서 가져오기
git clone
8-4. app.js 폴더로 이동 후 yarn, dependency설치
sudo npm install -g yarn
yarn install
touch .env 명령어로 .env파일 추가
vi .env 명령어로 .env 편집기 접속
i 입력 해서 쓰기모드로 변경
local에 있는 .env에있는 내용 붙여넣기
붙여넣기 후 esc 다음 :wq 엔터입력(저장)
node app.js
8-5. 서버를 백그라운드에서 실행하기 위해 pm2설치, 실행
yarn global add pm2
pm2 start app.js
8-6. 포트포워딩(주소 뒤에 :8000 없애는 방법) : 80포트로 들어오는 요청들을 app.js에서 실행한 포트로 보내주는 명령어 입력
**** EC2 인바운드 보안규칙 80포트 꼭 열어주세요

민감한 정보는 dotenv에 넣어준다.
dotenv 로 환경변수 설정하기 - 잘 설명된 링크

vs 코드에서 github repo에 연결하고
git add . => 모든 변경사항을 올린다.
git add app.js => app.js 변경사항만 올린다.

git commit -m "메세지를 남기세요" => 커밋하고 메시지를 남긴다.

git push => 이제 변경한 사항을 commit push

설치했으면 gitclone하고 env 파일 추가
yarn 도 터미널 배포
ㅡㅡㅡㅡㅡㅡㅡ
sudo apt remove --purge libnode72 nodejs
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
sudo apt update
sudo apt autoremove
sudo apt install nodejs

profile
성장하는뿅아리

0개의 댓글

관련 채용 정보