본문 바로가기

전체 글

(73)
[NestJs] 환경변수 설정 본 포스팅은 NestJs에서 환경변수 설정입니다.  dotenv는 dotenv npm  문서 참고 해주세요. yarn add dotenvdotenv를 먼저 설치 합니다. 이전에 npm 을 선택했으면 npm install dotenv입니다. 그 이후 .env.development을 파일을 생성 합니다..env에 외부에 노출이 되지 않을 값을 작성합니다. ex) db정보 NODE_ENV=developmentPORT=8000NODE_ENV는 develop, QA, production 구분을 나눕니다.  그 이후 pacakge.json에서 scripts안에서 start 명령어를 수정 해줍니다. "scripts": { ... "start:dev": "NODE_ENV=development nest start ..
[NestJs] NestJs 설치 본 포스팅은  NestJs 세팅 관련 글을 작성 하겠습니다.본 글은 공식 문서를 참고하여 작성 하였습니다. NestJs 소개Nest Js는 Node.js의 효율적이고 확장가능한 애플리케이션을 구축하기 위한 프레임워크입니다. TypeScript를 사용을 하지만 Javascript로도 코딩이 가능합니다. 또한, OOP(객체 지향 프로그래밍), , FP(기능 프로그래밍) 및 FRP(기능 반응 프로그래밍) 요소를 결합합니다. NestJs는 기본값으로 Express 의 서버 프레임워크를 사용하며 Fastify 를 사용하도록 구성 할 수 있습니다.이러한 일반적인 Node.js 프레임워크(Express/Fastify)보다 높은 수준의 추상화를 제공하지만 해당 API를 개발자에게 직접 공개하며 이를 통해 개발자는 기본..
[프로그래머스] 가장 많이 받은 선물 / Js https://school.programmers.co.kr/learn/courses/30/lessons/258712 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 function solution(friends, gifts) { let giftCountReceived = {}; let giftCountGiven = {}; // 친구들 값들을 초기화 friends.forEach(friend => { giftCountGiven[friend] = {}; giftCountReceived[friend] = 0; friends.forEach(other =>..
[프로그래머스] 신고 결과 받기 / js https://school.programmers.co.kr/learn/courses/30/lessons/92334 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제는 위의 링크를 참조 해주세요 function solution(id_list, report, k) { let answer = []; // 중복 제거된 신고자 let reports = {}; // 신고된 카운트 let reportsCount = {}; // 중복 제거 id_list.forEach( (id) => { reports[id] = new Set(); reportsCount[id] = 0..
[프로그래머스 ] 추억의 점수 / Js Lv1 추억의 점수 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 사진들을 보며 추억에 젖어 있던 루는 사진별로 추억 점수를 매길려고 합니다. 사진 속에 나오는 인물의 그리움 점수를 모두 합산한 값이 해당 사진의 추억 점수가 됩니다. 예를 들어 사진 속 인물의 이름이 ["may", "kein", "kain"]이고 각 인물의 그리움 점수가 [5점, 10점, 1점]일 때 해당 사진의 추억 점수는 16(5 + 10 + 1)점이 됩니다. 다른 사진 속 인물의 이름이 ["kali", "mari", "don", "tony"]이고 ["kali", "mari..
[Terraform] Terraform 프로바이더, 반복문 이번 시간에는 Terraform Provider와 반복문에 대해서 알아보겠습니다 Terraform Provider 모듈에서 사용되는 모든 리소스는 관련 프로바이더의 정의가 필요합니다. 사용자는 프로바이더 정의를 모듈 ( 자식 모듈에서 provider 정의, 부모 모듈에서 provider 정의) 자식 모듈에서 프로바이더 정의 프로바이더 버전과 구성에 민감하거나, 루트 모듈에서 프로바이더 정의 없이 자식 모듈이 독립적인 구조일 때 고려할 방법 모듈에서 사용하는 프로바이더 버전과 구성 상세를 자식 모듈에서 고정하는 방법 동일한 프로바이더가 루트와 자식 양쪽에 또는 서로 다른 자식 모듈에 버전 조건 합의가 안 되면, 오류가 발생하고 모듈에 반복문을 사용할 수 없다는 단점이 있으므로 잘 사용하지 않습니다. 루트 ..
[Terraform] Terraform module 이번 시간에는 module에 대해서 알아보겠습니다. Terraform module 단일 구조의 문제점 테라폼 구성에서 원하는 항목을 찾고 수정하는 것이 점점 어려워짐 리소스들 간의 연관 관계가 복잡해질수록 변경 작업의 영향도를 분석하기 위한 노력이 늘어남 개발/스테이징/프로덕션 환경으로 구분된 경우 비슷한 형태의 구성이 반복되어 업무 효율이 줄어듦 새로운 프로젝트를 구성하는 경우 기존 구성에서 취해야 할 리소스 구성과 종속성 파악이 어려움 https://developer.hashicorp.com/terraform/language/modules [Modules Overview - Configuration Language | Terraform | HashiCorp Developer Modules are co..
[Terraform] Terraform Workspace 이번 시간에는 Terraform Worksapce에 대해서 알아보겠습니다. Terraform Worksapce Workspace란 State를 관리하는 논리적인 가상 공간을 워크스페이스라고 합니다. 테라폼 구성 파일은 동일하지만 작업자는 서로 다른 State를 갖는 실제 대상을 프로비저닝할 수 있습니다. 워크스페이스는 기본 default로 정의되고 로컬 작업 환경의 워크스페이스 관리를 위한 CLI 명령어로 workspace가 있다. terraform workspace list * default 환경을 격리하는 방법 환경을 격리하는 방법은 2가지가 있습니다. 작업 공간을 통한 격리 동일한 구성에서 빠르고 격리된 테스트 환경에 유용 파일 레이아웃을 이용한 격리 보다 강력하게 분리해야 하는 운영 환경에 적합 ..