분류 전체보기
-
개요파이썬 토이 프로젝트 진행 중 무지성 chatGPT 따라하기를 시전한 결과 내 소중한 맥북에 이상한 패키지가 잔뜩 설치되었다.나는 2개 정도의 패키지만 설치하려 했는데 패키지가 패키지를 설치하고 그 패키지가 또 패키지를 설치하면서 약 20개 정도의 패키지가 추가되는 참사가 발생했다.하지만 homebrew는 기본적으로 설치된 패키지 노출 시 패키지명 오름차순으로 출력하고 설치 시간과 관련한 리스팅을 지원하지 않기 때문에 일일이 brew info 패키지명 명령어를 사용해야 설치 시간을 알 수 있다.내 맥북에 설치된 수많은 패키지의 정보를 일일이 조회할 순 없으니 약간의 꼼수를 부려보았고 이는 그 꼼수에 관한 포스팅이다.주의사항아래에서 설명할 방법은 패키지 설치 시간뿐만 아니라 수정 시간도 포함하여 삭제를..
Linux, homebrew - 오늘 설치한 brew 패키지 삭제하기개요파이썬 토이 프로젝트 진행 중 무지성 chatGPT 따라하기를 시전한 결과 내 소중한 맥북에 이상한 패키지가 잔뜩 설치되었다.나는 2개 정도의 패키지만 설치하려 했는데 패키지가 패키지를 설치하고 그 패키지가 또 패키지를 설치하면서 약 20개 정도의 패키지가 추가되는 참사가 발생했다.하지만 homebrew는 기본적으로 설치된 패키지 노출 시 패키지명 오름차순으로 출력하고 설치 시간과 관련한 리스팅을 지원하지 않기 때문에 일일이 brew info 패키지명 명령어를 사용해야 설치 시간을 알 수 있다.내 맥북에 설치된 수많은 패키지의 정보를 일일이 조회할 순 없으니 약간의 꼼수를 부려보았고 이는 그 꼼수에 관한 포스팅이다.주의사항아래에서 설명할 방법은 패키지 설치 시간뿐만 아니라 수정 시간도 포함하여 삭제를..
2024.10.05 -
개요linux를 사용하다 보면 자주 사용하게 되는 ls -al 명령어에서 각 항목이 무슨 의미인지 생각이 안 날 때가 있어 글로 정리 하려한다.각 항목별 설명항목예시설명권한-rw-r--r--파일 유형 및 접근 권한- 첫 글자는 파일 유형(-: 파일, d: 디렉토리 등), 다음 9글자는 소유자, 그룹, 기타 사용자의 권한링크 수1해당 파일이나 디렉토리에 연결된 하드 링크의 수소유자user파일이나 디렉토리의 소유자 이름그룹staff파일이나 디렉토리가 속한 그룹 이름크기1024파일의 크기(바이트 단위) 디렉토리의 경우 메타데이터 크기수정 날짜 및 시간Oct 5 12:34마지막으로 파일이나 디렉토리가 수정된 날짜와 시간파일명example.txt파일이나 디렉토리의 이름예시권한 | 링크 수 | 소유자 | 그룹 | ..
Linux - ls -al 명령어 각 항목별 설명개요linux를 사용하다 보면 자주 사용하게 되는 ls -al 명령어에서 각 항목이 무슨 의미인지 생각이 안 날 때가 있어 글로 정리 하려한다.각 항목별 설명항목예시설명권한-rw-r--r--파일 유형 및 접근 권한- 첫 글자는 파일 유형(-: 파일, d: 디렉토리 등), 다음 9글자는 소유자, 그룹, 기타 사용자의 권한링크 수1해당 파일이나 디렉토리에 연결된 하드 링크의 수소유자user파일이나 디렉토리의 소유자 이름그룹staff파일이나 디렉토리가 속한 그룹 이름크기1024파일의 크기(바이트 단위) 디렉토리의 경우 메타데이터 크기수정 날짜 및 시간Oct 5 12:34마지막으로 파일이나 디렉토리가 수정된 날짜와 시간파일명example.txt파일이나 디렉토리의 이름예시권한 | 링크 수 | 소유자 | 그룹 | ..
2024.10.05 -
cors 라이브러리 설치npm install corscors 라이브러리 사용// index.jsconst express = require('express')const app = express()const port = 3000const cors = require('cors')app.use(cors());app.get('/', (req, res) => { res.send('Hello World!')})app.listen(port, () => { console.log(`Example app listening on port ${port}`)})
express - cors 허용cors 라이브러리 설치npm install corscors 라이브러리 사용// index.jsconst express = require('express')const app = express()const port = 3000const cors = require('cors')app.use(cors());app.get('/', (req, res) => { res.send('Hello World!')})app.listen(port, () => { console.log(`Example app listening on port ${port}`)})
2024.09.27 -
개요express.js 프로젝트 진행 중 모델 인스턴스 validation을 일일히 작성해주는게 귀찮아 공통으로 처리하는 작업을 진행했다.프로젝트 디렉토리 구조project├── app.js├── middlewares│ └── beforeValidateHandler.js└── config └── db.jsmiddlewares/beforeValidateHandler.jsconst { ValidationError } = require('sequelize');/** * 모델 인스턴스 validation * * @param {Object} entity - 검증할 모델 인스턴스 * @throws {ValidationError} 속성 규칙에 따라 필드 값이 유효하지 않은 경우 예외 발생 */functi..
express - sequelize 모델 인스턴스 validation 공통 처리개요express.js 프로젝트 진행 중 모델 인스턴스 validation을 일일히 작성해주는게 귀찮아 공통으로 처리하는 작업을 진행했다.프로젝트 디렉토리 구조project├── app.js├── middlewares│ └── beforeValidateHandler.js└── config └── db.jsmiddlewares/beforeValidateHandler.jsconst { ValidationError } = require('sequelize');/** * 모델 인스턴스 validation * * @param {Object} entity - 검증할 모델 인스턴스 * @throws {ValidationError} 속성 규칙에 따라 필드 값이 유효하지 않은 경우 예외 발생 */functi..
2024.08.29 -
docker-compose.ymlversion: '3.8' # Docker Compose 파일 버전services: postgres: image: postgres:16 # PostgreSQL 최신 이미지 사용 container_name: postgresql-container # 컨테이너 이름을 'postgresql-container'로 지정 environment: POSTGRES_USER: postgres # 슈퍼유저 계정으로 'postgres' 사용 권장 POSTGRES_PASSWORD: 비밀번호 # DB 접속 비밀번호 설정 POSTGRES_DB: 데이터베이스 # 생성할 기본 데이터베이스 이름 설정 ports: - "5432:5432" # 호스..
PostgreSQL - docker compose 파일로 PostgreSQL 디비 실행하기docker-compose.ymlversion: '3.8' # Docker Compose 파일 버전services: postgres: image: postgres:16 # PostgreSQL 최신 이미지 사용 container_name: postgresql-container # 컨테이너 이름을 'postgresql-container'로 지정 environment: POSTGRES_USER: postgres # 슈퍼유저 계정으로 'postgres' 사용 권장 POSTGRES_PASSWORD: 비밀번호 # DB 접속 비밀번호 설정 POSTGRES_DB: 데이터베이스 # 생성할 기본 데이터베이스 이름 설정 ports: - "5432:5432" # 호스..
2024.08.15 -
docker-compose.ymlversion: '3.8'services: redis: image: redis:latest # 최신 Redis 이미지를 사용 container_name: redis-container # 컨테이너 이름을 'redis-container'로 지정 ports: - "6379:6379" # 로컬의 6379 포트를 Redis 컨테이너의 6379 포트에 매핑 volumes: - redis_data:/data # 로컬의 'redis_data' 볼륨을 컨테이너의 /data 디렉토리에 매핑하여 데이터 영속성 유지 environment: REDIS_PASSWORD: 비밀번호 # Redis 서버에 접근할 때 사용할 비밀번호 환경 ..
Redis - docker compose 파일로 redis 디비 실행하기docker-compose.ymlversion: '3.8'services: redis: image: redis:latest # 최신 Redis 이미지를 사용 container_name: redis-container # 컨테이너 이름을 'redis-container'로 지정 ports: - "6379:6379" # 로컬의 6379 포트를 Redis 컨테이너의 6379 포트에 매핑 volumes: - redis_data:/data # 로컬의 'redis_data' 볼륨을 컨테이너의 /data 디렉토리에 매핑하여 데이터 영속성 유지 environment: REDIS_PASSWORD: 비밀번호 # Redis 서버에 접근할 때 사용할 비밀번호 환경 ..
2024.08.15 -
개요아....... 글 80% 작성 완료했는데 날아가서 새로 써야하네요.... 정말 속상합니다....한 서버에서 여러 프로젝트를 돌려야 하는데 각 서브 도메인마다 ssl 인증 관리를 해주어야 해서 열심히 삽질을 한 결과Nginx Proxy Manager(이하 npm, js 패키지 매니저 아님)를 사용하는게 가장 쉽고 편하다는 것을 깨닫게 되었다.그리하여 docker compose를 사용하여 npm을 컨테이너로 실행하고 서브도메인별로 ssl 인증을 받는 과정을 정리해본다.서버 디렉토리 구조.ssh├── nginx│ └── docker-compose.yml├── project1│ └── docker-compose.yml└── project2 └── index.jsnginx/docker-co..
Docker - Nginx Proxy Manager(npm) Docker로 실행하기개요아....... 글 80% 작성 완료했는데 날아가서 새로 써야하네요.... 정말 속상합니다....한 서버에서 여러 프로젝트를 돌려야 하는데 각 서브 도메인마다 ssl 인증 관리를 해주어야 해서 열심히 삽질을 한 결과Nginx Proxy Manager(이하 npm, js 패키지 매니저 아님)를 사용하는게 가장 쉽고 편하다는 것을 깨닫게 되었다.그리하여 docker compose를 사용하여 npm을 컨테이너로 실행하고 서브도메인별로 ssl 인증을 받는 과정을 정리해본다.서버 디렉토리 구조.ssh├── nginx│ └── docker-compose.yml├── project1│ └── docker-compose.yml└── project2 └── index.jsnginx/docker-co..
2024.08.14 -
프로젝트 개요프로젝트 이름: 🛎️ Discord Github NotificationGithub repository urlGithub marketplace url프로젝트 설명이 프로젝트는 GitHub Action을 통해 GitHub에서 발생하는 다양한 이벤트(예: Pull Request 생성, 이슈 생성 등)를 Discord 채널 알림으로 전송하는 프로세스를 단순화해주는 서비스입니다.이 Action을 사용하면 중요한 개발 이벤트를 놓치지 않고 바로 Discord에서 확인할 수 있습니다!이 Action은 커스텀 알림 메시지를 지원하며, 한국어 🇰🇷와 영어 🇬🇧 중 원하는 언어로 알림을 받을 수 있습니다.👤 개발자: 김채민(Aleph Kim)🔧 주요 기능📝 PR 알림Pull Request 생성,..
Github - 디스코드 깃허브 알림 action(Discord Github Notification) 설명서프로젝트 개요프로젝트 이름: 🛎️ Discord Github NotificationGithub repository urlGithub marketplace url프로젝트 설명이 프로젝트는 GitHub Action을 통해 GitHub에서 발생하는 다양한 이벤트(예: Pull Request 생성, 이슈 생성 등)를 Discord 채널 알림으로 전송하는 프로세스를 단순화해주는 서비스입니다.이 Action을 사용하면 중요한 개발 이벤트를 놓치지 않고 바로 Discord에서 확인할 수 있습니다!이 Action은 커스텀 알림 메시지를 지원하며, 한국어 🇰🇷와 영어 🇬🇧 중 원하는 언어로 알림을 받을 수 있습니다.👤 개발자: 김채민(Aleph Kim)🔧 주요 기능📝 PR 알림Pull Request 생성,..
2024.08.09