문제 상황 M1 Mac Sonoma 14.0 에서 homebrew 를 아래의 명령어를 이용해서 설치하고자 했다. /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" 하지만 아래와 같은 에러가 발생했다. Warning: /op...
[Homebrew] brew doctor(compinit:503:)
문제 상황 Node 를 새로운 버전으로 업데이트하고 나서 오류가 발생했다. 정확한 오류 메세지를 기록하지 않아서 모르지만, 제목과 같은 내용이 포함되어 있었다. 문제 해결 터미널에서 brew doctor 실행 후 brew clenup 을 실행한다. source ~/.zshrc 을 실행한다. 참고자료 [Homebrew...
Monorepo vs Multirepo
프로젝트 구조 만들기 새로운 프로젝트를 시작하기 위해 TypeScript 기반의 프레임워크를 사용하고자 했다. Frontend : Next.js Backend : Nest.js 같은 언어를 사용하는 만큼 Multirepo 보다 Monorepo 를 사용하고자 했다. Monorepo 는 구글에서도 사용할 정도로 확장성 및 관리 용이성이 ...
Git Commit Convention
Commit Convention Udacity Git Commit Message Style Guide 를 참고하여 아래와 같은 규칙으로 사용합니다. 메세지 구조 커밋 메세지는 크게 제목, 본문, 꼬리말 3가지 파트로 나눕니다. 각 파트는 빈 줄을 두어 구분합니다. **tag**(옵션): **Subject** [#issue_number] //...
TypeScript Code Convention
Code Convention 코드 컨벤션은 Google TypeScript Style Guide 를 따릅니다. 변수명 변수명은 아래의 분류에 따라 작성합니다. 표기법 종류 UpperCamelCase 클래스, 인터페이스, 타입, enum, 데코레이터, 타입 파...
[Github Actions] refusing to allow a Personal Access Token to create or update workflow 에러 해결 방법
문제 상황 Github actions 를 사용하기 위해 .yml 파일을 수정했다. git push 를 시도했으나 아래와 같은 에러 메세지가 표시되었다. ! [remote rejected] main -> main (refusing to allow a Personal Access Token to create or update wor...
프로그래머스 Level 0 - 저주의 숫자 3 (C++)
프로그래머스 - Level0 저주의 숫자 3 문제 설명 3x 마을 사람들은 3을 저주의 숫자라고 생각하기 때문에 3의 배수와 숫자 3을 사용하지 않습니다. 3x 마을 사람들의 숫자는 다음과 같습니다. 10진법 3x 마을에서 쓰는 숫자 10진법 3x 마을에서 쓰는 숫자 ...
Redis 개념, 장점과 단점, Docker 사용 예시 정리
Redis 등장 배경 서버 프로그램이 데이터를 영구적으로 저장하기 위해서 데이터베이스를 사용한다. 데이터베이스는 주로 데이터 간의 관계를 정의한 RDBMS(Relational DataBase Management System)를 사용한다. RDBMS는 데이터 간의 복잡한 관계를 보여줄 때 매우 효과적이다. 하지만 하드 디스크에 데이터를 저장하고 읽...
next.js 빌드 시 환경 변수가 undefined 인 문제 해결 (feat. docker-compose)
문제 상황 Next.js 로 작성한 프론트엔드 프로젝트를 docker 와 docker-compose 를 이용해서 컨테이너로 올리고 싶었다. 개발할 때는 .env 파일을 docker-compose 를 통해서 넣어줬고, 환경 변수를 잘 인식했다. 하지만 배포를 위해 npm run build 명령어로 빌드하고 npm run start 로 실행해보니 환...
[회고] 42서울 C++ 기반 nginx 샘플링 프로젝트 회고
들어가며 Nginx처럼 작동하는 웹 서버를 만드는 webserv 과제를 드디어 마쳤다. 약 두 달간 팀원들과 치열하게 머리를 맞대며 고민하고, 오류를 잡기 위해 늦은 시간까지 모니터 앞에서 보낸 시간들이 아득하게 떠오른다. 이전에 진행했던 Inception 과제에서는 Nginx를 사용했지만, 정작 Nginx가 어떻게 작동하는지, 설정 파일을 어떻게...