전체 글
-
docker-compose 개발 환경 만들기Server/Container 기술 2024. 12. 9. 17:37
nginx + next.js(next-ts-app) + mariaDB + springboot(backend) 구성으로 설정해 보려고 한다. 1. 종류 및 설치방법1.1. Docker Desktop란?Docker Desktop은 Docker 컨테이너 기반의 애플리케이션을 로컬 개발 환경에서 쉽게 실행하고 관리할 수 있도록 제공되는 GUI 기반의 도구이다. Docker의 주요 기능을 그래픽 사용자 인터페이스(GUI)와 명령줄 인터페이스(CLI)로 모두 사용할 수 있어, 초보자부터 숙련된 개발자까지 편리하게 Docker를 사용할 수 있다.비상업적 용도는 무료, 상업적 용도로는 유료로 전환되어 필자는 현재 Rancher 및 Colima를 사용하고 있다. 1.2. Rancher란?Rancher는 여러 Kubern..
-
docker-compose란?Server/Container 기술 2024. 12. 9. 17:08
오랜만에 docker-compose로 환경을 구성하면서 정리해 두려고 한다. 주요기능1. 멀티 컨테이너 애플리케이션 관리여러 개의 Docker 컨테이너를 하나의 구성 파일로 정의하고 실행 가능하다.웹 애플리케이션, 데이터베이스, 캐시서버 등 단일 명령으로 실행 가능하다.2. 의존성 관리컨테이너 간의 의존성을 정의하고 자동으로 순서를 조정할 수 있다.예: 데이터베이스 컨테이너가 준비될 때까지 웹 컨테이너 대기한다.3. 간편한 실행단일 명령으로 모든 컨테이너를 시작, 중지, 재시작 가능하다.4. 환경 파일 지원.env 파일을 사용하여 환경 변수를 정의하고 재사용이 가능하다.5. 네트워크와 볼륨 관리네트워크 : 컨테이너 간 통신을 위한 네트워크를 자동 생성 및 관리 할 수 있다.볼륨 : 컨테이너의 데이터를 호..
-
env-cmd란?Language/React 2024. 12. 6. 10:19
env-cmd에 대해서 정리해 두자. env-cmd란?Node.js 애플리케이션에서 환경 변수를 손쉽게 관리하기 위한 도구.env 파일에 정의된 환경 변수를 로드하여 실행 중인 애플리케이션에서 사용할 수 있도록 해준다.환경 변수는 애플리케이션의 설정값(예: 데이터베이스 URL, API 키 등)을 관리하는 데 사용된다. 주요 특징1. 환경 변수 관리.env 파일의 변수들을 자동으로 로드하여 실행 중인 애플리케이션에서 사용 가능하다. 2. 다중 환경 지원개발, 테스트, 프로덕션 등의 환경별 .env 파일을 손쉽게 구분하고 각 환경에 맞는 .env 파일을 로드한다. 3. 간단한 사용법추가적인 코딩 없이 명령어로 환경 변수 로드할 수 있다. 4. 보안 및 코드 유지보수성 향상민감한 정보를 코드에 직접 포함하지 ..
-
Node.js 애플리케이션 관리 프로세스 매니저, pm2란?Server/AWS,서버관리 2024. 12. 6. 09:46
pm2에 대해서 정리해두자.pm2란?Node.js 애플리케이션을 관리하기 위한 프로세스 매니저로, 특히 서버 애플리케이션의 안정성과 성능을 유지하기 위해 널리 사용된다. PM2는 애플리케이션의 실행, 관리, 모니터링 등을 쉽게 수행할 수 있도록 다양한 기능을 제공한다. 주요기능프로세스 관리Node.js 애플리케이션을 백그라운드에서 실행하고, 중단 없는 실행을 보장애플리케이션이 중단되거나 크래시 날 경우 자동으로 재시작애플리케이션의 실행, 중지, 재시작 등을 명령어로 간단히 제어로드 밸런싱, 클러스터 모드여러 CPU 코어를 활용할 수 있도록 클러스터 모드를 지원하여 Node.js 애플리케이션 성능 극대화클러스터 모드로 트래픽을 균등하게 분배.로그 관리실행 중인 애플리케이션의 로그를 관리하고 로그를 실시간으..
-
Cursor + Next.js 개발설정Tool/VSCode&Cursor 2024. 12. 4. 17:37
1. Next.js 프로젝트 생성하기공식사이트를 보고 생성한다.test 폴더를 생성하고 source 프로젝트를 생성한다.$ mkdir test$ cd test$ npx create-next-app@latest source --use-npm --example "https://github.com/vercel/next-learn/tree/main/basics/learn-starter" 노드 버전 오류npx: installed 1 in 0.905sUnexpected token '??=' node를 최신 버전으로 변경하고 재시도 한다. 2. 서버 실행$ cd source$ cat package.json$ yarn dev scripts를 확인하고 서버를 실행해 본다. node 버전이 낮으면 아래와 같은 에러가 발생..
-
react-hook-form을 사용하여 배열 형태 input 사용Language/React 2024. 12. 2. 12:32
배열형태의 Input을 처리하는 방식을 정리해 둔다. ChatGPT 예시import React from "react";import { useForm, useFieldArray, Controller } from "react-hook-form";function MyForm() { // react-hook-form의 useForm 훅 사용 const { control, handleSubmit, register, formState: { errors } } = useForm({ defaultValues: { users: [{ name: "" }] // 기본값으로 하나의 입력 필드를 넣음 } }); // useFieldArray 훅을 사용하여 동적으로 필드 추가 및 제거 const { ..
-
selenium으로 크롤링하고 Slack에 메시지 전송Language/Python 2024. 11. 24. 16:57
시에서 운영하는 캠핑장들은 빈자리가 생겨서 알림을 받을수 없는것 같다, 수시로 새로고침해서 예약을 하다 보니 겁나 귀찮다.캠핑은 좋고 예약은 힘들고 알림이라도 받아서 하는게 어떨까? 그냥 크롤링으로 알림 받는걸 만들어 놓자.하지만 사용하진 않는다, 배치형태로 돌려야 할 것 같은데 서버를 어떤식으로 할지도 고민해봐야 할듯해서 일단은 대충 만들어 놓고 나중에 진짜로 사용할때 좀더 고급스럽게 커스터 마이징해서 사용하도록 하자. 참고로 python에서 slack에 메시지 보내는 방법은 이전 포스팅에 작성되어 있다. 1. 요구사항`금`,`토` (주말) 및 `공휴일`에 자리가 있다면 데이터를 추출빈자리가 있을때 알림이 오게하는게 1차 목표임으로 데이터를 가공하지는 않는다.추출한 데이터를 json형태로 Slack에 ..