Study 192

[Docker] 로컬 개발 환경 세팅(vscode, IntelliJ) (1) - 실패

서론SSAFY 2학기를 맞이해서 프로젝트를 진행하고 있다.본인은 인프라를 담당했고, 우선적으로 팀원들의 개발 환경 통일을 위한 세팅을 제공하기 위해 진행한 내용에 대해 정리한다. 필독해당 글대로 진행을 했으나 문제가 생겼고, 이를 해결하여 포스팅을 할 예정이다. 로컬 환경 세팅을 위한 Docker 기술 스펙FE이름버전Node.js20.x (LTS)Vite7.2.xReact19.2.xTypeScript5.9.x BE이름버전Java21Spring3.5.9MySQL8.0Redis7.2 구성Docker를 사용해서 팀원들의 개발 환경을 동일시 만들 것이다. 내가 생각했을 때 중요하게 고려해야 할 점은 두가지였다.프론트엔드와 백엔드가 모든 팀원들의 환경에서 코드만 있으면 동일하게 수행되어야 한다.도커 컨테이너 내..

Study/Docker 2026.01.21

[Infra]Terraform 기본

서론약 2-3년 전 Terraform을 배운 적이 있지만, 이후에 사용한 적이 없어 Terraform에 대해 다시 학습했다. 이번에는 기본적인 사용법 및 내용을 적어두어 나중에 필요할 때 꺼내보기 위해 기록한다. Terraform Up&Runnig 책을 참고하고자 했으나,테라폼으로 시작하는 IaC가 ebook으로 쉽게 참고할 수 있어 대체했다.TerrafromWorkflowterraform init환경 준비테라폼 구성 파일이 있는 작업 디렉터리를 초기화terraform plan파일 검토인프라의 변경 사항에 관한 실행 계획을 생성하는 동terraform apply실행계획을 기반으로 작업을 실행terraform destroy테라폼 구성에서 관리하는 모든 개체를 제거하는 명령 terraform validat..

Study/Cloud 2026.01.14

[AI]OCR API(Naver Clova OCR)

서론SSAFY 미니 프로젝트를 진행하며 이미지를 분석해 텍스트를 추출하는 기능이 필요했다. 이를 공부하고 도입한 과정에 대해 정리해보고자 한다.OCR이란?Optical Character Recognition (광학 문자 인식)텍스트 이미지를 기계(컴퓨터)가 읽을 수 있는 텍스트 포맷으로 변환하는 기술 카메라로 이미지를 인식하면 텍스트를 읽어오는 과정을 생각하면 된다. 일상에서 영수증이나 신분증, 메뉴판 등을 카메라로 인식하는 경우가 있다. 이때 OCR을 통해 이미지를 텍스트 문서로 변환하여 텍스트 데이터로 저장할 수 있다. 동작 원리글자를 어떻게 인식하지?이미지 획득스캐너를 통해 문자를 이진 데이터로 변환밝은 부분 → 배경 / 어두운 부분 → 글자(텍스트)전처리정렬 문제 해결을 위해 기울기 조절이미지 얼..

Study/AI 2025.12.18

[CS]MySQL 아키텍처2_InnoDB 스토리지 엔진

이전 글 [CS]MySQL 아키텍처1_MySQL 엔진서론SSAFY를 하며 CS 스터디를 진행하고 있다. CS 스터디에서 OS 파트를 진행할 때는 블로그 포스팅을 하지 못했지만, 이번 DB 파트에 대해서는 포스팅을 해보고자 한다. 포스팅의 내용은 모두 Real Myseomj74.tistory.comInnoDB구조Primary Key에 의한 클러스터링클러스터링이란? 데이터 레코드가 특정 키의 순서에 따라 디스크에 물리적으로 정렬되어 저장되는 것클러스터링이 적용되는 키를 클러스터링 인덱스라고 부른다. 세컨더리 인덱스란?Primary Key를 제외한 테이블의 다른 모든 인덱스를 통칭보조 인덱스라고도 한다. InnoDBPrimary Key가 클러스터링 인덱스세컨더리 인덱스는 Primary Key의 값을 논리적인 ..

Study/CS 2025.12.09

[CS]MySQL 아키텍처1_MySQL 엔진

서론SSAFY를 하며 CS 스터디를 진행하고 있다. CS 스터디에서 OS 파트를 진행할 때는 블로그 포스팅을 하지 못했지만, 이번 DB 파트에 대해서는 포스팅을 해보고자 한다. 포스팅의 내용은 모두 Real MySQL 8.0 책을 기반으로 작성할 것이며, 추가로 참고한 블로그나 웹 페이지가 존재한다면 참고 링크를 남겨놓을 예정이다. AI(ChatGPT, Gemini)를 통해 이해한 내용을 포함할 수 있다. Real MySQL 8.0 (1권) | 백은빈 - 교보문고Real MySQL 8.0 (1권) | MySQL 서버를 활용하는 프로젝트에 꼭 필요한 경험과 지식을 담았습니다!《Real MySQL 8.0》은 《Real MySQL》을 정제해서 꼭 필요한 내용으로 압축하고, MySQL 8.0의 GTID와 Inn..

Study/CS 2025.11.02

[AI]vscode에서 Playwright, Notion 사용해보기(Feat. MCP)

MCP란Model Context ProtocolModel(AI 모델)이 다양한 Context(문맥)을 받아 활용할 수 있도록 약속된 Protocol(규칙)LLM 모델이 외부 애플리케이션과 연동할 수 있도록 해주는 스펙 이는 프로토콜이다. LLM 애플리케이션과 Tool 서버 통신에 대해 정의한 규칙이다. 이 규칙만 따르면 어떤 SDK나 어떤 프로그래밍 언어 등 사용이 가능하다. (아직은 MCP에 대한 개념이 덜 잡혀서 천천히 공부해볼 예정이다.) 참고https://bcho.tistory.com/1470실습참고Playwright브라우저 기반 웹 서비스 테스트 및 웹 크롤링 도구Notion MCP노션 워크스페이스 연동 및 문서화vscode에서 playwright 사용해보기vscode에 playwright M..

Study/AI 2025.09.01

[Gemini]vscode에서 Gemini로 코드 작성해보기

vscode와 Gemini를 연동하여 코드를 작성해보는 실습을 진행하고자 합니다.(여담이지만, 블로그 글 수정하려다 삭제해버렸고 복구가 불가능해 매우 슬프네요...)사전 준비vscode를 설치해야 한다. 웬만하면 모두 설치가 되어 있는 상태일테니 해당 과정은 생략하도록 한다. 만약 설치가 되어 있지 않다면 아래 링크를 통해 설치할 수 있다. https://code.visualstudio.com/ Visual Studio Code - Code Editing. RedefinedVisual Studio Code redefines AI-powered coding with GitHub Copilot for building and debugging modern web and cloud applications. Vi..

Study/AI 2025.08.27

[Network]NFS 서버 및 클라이언트 구성

NFS를 이전에 배웠고 구성하고 사용한 적이 있으나 다시 구성해야 할 일이 생겼고 복습을 하는 겸 블로그에도 정리해두고자 한다.NFSNetwork File System네트워크에 파일을 저장하는 메커니즘사용자가 원격 컴퓨터에 있는 파일 및 디렉토리에 액세스할 수 있고 해당 파일 및 디렉토리가 로컬에 있는 것처럼 처리하도록 허용하는 분산 파일 시스템클라이언트-서버 관계를 통해 해당 서비스를 제공서버: 파일 시스템 또는 디렉토리 및 기타 자원의 원격 액세스를 가능하게 만드는 컴퓨터반출: 파일 시스템을 가능하게 만드는 조치클라이언트: 서버 자원을 사용하는 컴퓨터와 해당 프로세스→ 클라이언트가 서버가 반출한 파일 시스템을 마운트한 후에 클라이언트는 개별 서버 파일에 액세스할 수 있다.  설치환경Server: Ce..

Study/Network 2024.12.04

[DB]PostgreSQL 백업

PostgreSQL Backup 방법 3가지에 대해 정리해보자.SQL 덤프파일 시스템 기반 백업아카이브 모드 백업실습을 진행해보진 않았으면 조사 과정에서 정리해둔 내용을 기록하고자한다.추후 기회가 된다면 실습하여 내용을 추가하겠다.SQL 덤프pg_dump와 pg_dumpall 명령어를 사용한다. pg_dump: 데이터베이스 하나만 dump 가능하다. $ pg_dump dbname > dumpfile$ psql dbname  DB 파일이 크다면 압축을 이용할 수 있다. $ pg_dump dbname | gzip > filename.gz$ gunzip -c filename.gz | psql dbname$ cat filename.gz | gunzip | psql dbname  pg_dumpall: Postgr..

Study 2024.10.08

[Kubernetes] Cluster Architecture 및 Pod 생성 과정

Kubernetes의 Cluster Architecture에 대해 알아보고 각 구성 요소에 대해 설명한다.추가로 Pod 생성 과정에 대해서도 설명한다.다음 그림을 통해 구성 요소들을 살펴볼 수 있다.  Control Plane과 Node로 크게 분리할 수 있다. Control Planekube-apiserverk8s cluster의 중심 역할을 하는 통로 k8s control plane의 프론트엔드  etcdk8s의 백엔드 데이터 저장소 구성 요소들의 상태 값이 저장되는 곳  kube-schedulernode의 상태와 자원, 레이블, 요구 조건 등을 고려해 pod를 어떤 worker node에 생성할 것인지 결정하고 할당   kube- controller-managerk8s cluster의 오브젝트 상태..

Study/Kubernetes 2024.09.23