전체 글 26

[NestJS] 모듈 간의 자유로운 의존성 사용, 다른 모듈의 의존성 주입

각각 다른 기능을 담당하는 모듈1,2가 있다고 가정해보자. 그런데 이 두 개의 모듈에서 같은 클래스를 써줘야 하는 경우엔 어떻게 해야 할까??? 같은 클래스를 여러번 작성하는건 대충 생각해봐도 너무 비효율적이다. 그럴 때 NestJS의 의존성 주입을 이용해서 반복해서 써야 하는 클래스를 하나의 모듈에 한 번만 쓰고, 다른 모듈에서 불러와서 해당 모듈을 불러와서 자유롭게 사용할 수 있다. NestJS를 사용해서 만드는 어플리케이션 구조를 보면 쉽게 이해할 수 있다. NestJS의 모든 모듈은 공유모듈 이기때문에, 일단 생성되면 모든 모듈에서 재사용할 수 있다. 모듈1에서 모듈2의 서비스를 사용하려 한다 가정하고, 과정을 따라가보자. 1. 모듈1의 import에 모듈2 작성하기 MyArticleModule(..

NestJS 2022.02.24

[Docker/NestJS] NestJS 프로젝트를 Docker로 배포하기 위한 Dockerfile 작성

Docker는 Dockerfile을 읽고 image를 생성한다. 이 image를 pull 받고 컨테이너를 생성해서 실행하면 Docker를 통해 배포되는 것이다. Dockerfile은 무작정 복붙하면 안 되고, 자신의 프로젝트 환경에 맞게 작성해야 한다!! !!! 1. Dockerfile 작성 //사용하는 node 버전 작성 FROM node:14 //COPY, ADD, RUN 등이 실행되는 디렉토리 경로 작성 WORKDIR /docker-practice-app //이미지로 복사하려는 파일 작성 COPY package.json /docker-practice-app/package.json //이미지 실행시 사용될 명령어 작성 RUN npm install //COPY 명령어와 유사, 이미지로 복사하려는 파일 ..

환경세팅 2022.02.20

[Git] 브랜치 전략 세우기

현재 하고 있는 프로젝트에서 사용하는 브랜치 전략에 대해 정리하려고 한다. https://nvie.com/posts/a-successful-git-branching-model/ A successful Git branching model In this post I present a Git branching strategy for developing and releasing software as I’ve used it in many of my projects, and which has turned out to be very successful. nvie.com 해당 문서에 작성된 브랜치 전략인데, 1. master 배포 버전의 브랜치 2. develop 각자 작업한 기능 브랜치들을 merge 하는 개발 브랜..

Git 2022.02.20

[Git] git reflog로 커밋 내역 확인하고 git reset으로 커밋 복구하기

git reset --hard 명령어를 사용하면, HEAD가 바뀌면서 로컬 스토리지의 작업내역이 바뀐다. 하지만, git commit 내역은 git reflog 명령어를 통해 확인 할 수 있다. 이 명령어를 통해 커밋 해시 ID를 다시 확인해서 취소한 커밋을 복구하여 로컬 스트리지를 복구할 수 있다. 취소한 커밋 복구하는 법 1. git reflog 로 취소한 커밋까지 포함한 커밋 내역 확인 git reflog 2. 커밋 아이디 입력해서 되돌리기 git reset --hard 간단하게 복구된다. reset을 잘못 사용해서 4시간 동안 열심히 작업한 내역이 사라져서 절망했는데, 너무 간단하게 되돌릴 수 있었다.. Git 정말 똑똑해..

Git 2022.02.20

[Wantudy] Nodejs와 React로 구현한 웹 프로젝트 회고

프로젝트 내용 https://youtu.be/NF_OMyGxZzA 시연 영상 Wantudy 스터디 올인원 웹페이지 팀원 기획 3 / 개발4(프론트2,백2) / 디자인 1 전체 프로젝트 기간 9/22 ~ 11/26 개발 기간 10/11 ~ 11/26 (초기환경 구축을 제외한 개발 기간은 한 달 정도 인 것 같다.) 기술 스택 프론트 - React 백 - Node.js, Express, MongoDB 프로젝트 환경 AWS EC2 협업 툴 Figma, Notion, Swagger 구현 API 스터디 모집 API 스터디 모집글을 작성하고 등록, 수정 및 삭제 기능 구현 스터디 모집 글의 상세페이지 조회 기능 구현 게시된 스터디 목록 조회 기능 구현 ( 스크랩 순, 마감 기한 임박 순 등 조회 조건 필터링 가능)..

프로젝트 회고 2022.02.03

[AWS/NestJS] AWS에 NestJS,MongoDB 설치

사용 스택 : NestJs, mongodb 개발 환경 : AWS EC2, ubuntu NestJS는 Nodejs프레임 워크이다. 따라서 NestJS 프로젝트를 생성하기 위해서는 우선 nodejs를 설치해야 한다. nvm(Node Version Manager)을 통해서 원하는 nodejs버전을 다운 받을 수 있다. https://github.com/nvm-sh/nvm GitHub - nvm-sh/nvm: Node Version Manager - POSIX-compliant bash script to manage multiple active node.js versions Node Version Manager - POSIX-compliant bash script to manage multiple active ..

환경세팅 2022.02.03