Kubernetes (3) - Pod 컨테이너와 Multi-Container Pod 이해하기
실습 전 확인하기 : kubectl 이 실습용 클러스터를 가리키는지 먼저 확인한다. cat 파일명 으로 시작하는 블록은 터미널에 그대로 붙여넣으면 현재 디렉터리에 YAML 파일이 만들어지고, 이어지는 kubectl apply f 명령으로 적용한다. 필드 일부만 보여 주…

실습 전 확인하기 : kubectl 이 실습용 클러스터를 가리키는지 먼저 확인한다. cat 파일명 으로 시작하는 블록은 터미널에 그대로 붙여넣으면 현재 디렉터리에 YAML 파일이 만들어지고, 이어지는 kubectl apply f 명령으로 적용한다. 필드 일부만 보여 주…

실습 전 확인하기 : kubectl 이 실습용 클러스터를 가리키는지 먼저 확인한다. cat 파일명 으로 시작하는 블록은 터미널에 그대로 붙여넣으면 현재 디렉터리에 YAML 파일이 만들어지고, 이어지는 kubectl apply f 명령으로 적용한다. 필드 일부만 보여 주…
실습 전 확인하기 : kubectl 이 실습용 클러스터를 가리키는지 먼저 확인한다. cat 파일명 으로 시작하는 블록은 터미널에 그대로 붙여넣으면 현재 디렉터리에 YAML 파일이 만들어지고, 이어지는 kubectl apply f 명령으로 적용한다. 필드 일부만 보여 주…
Dockerfile은 하나의 애플리케이션을 이미지로 패키징하는 데 적합하다. 하지만 웹 프론트엔드, 백엔드 API, 데이터베이스처럼 여러 컴포넌트로 구성된 애플리케이션을 실행하려면 각 컨테이너의 이미지, 포트, 환경 변수, 볼륨, 네트워크를 함께 관리해야 한다. Doc…
Kafka를 처음 접하면 Producer, Consumer, Broker, Topic, Partition 같은 용어가 한꺼번에 등장해 복잡하게 느껴진다. 이번 글에서는 주문 생성 이벤트를 예로 들어 각 개념이 어떻게 연결되는지 정리한다. 또한 Kafka 클러스터 내부의…

앞선 글에서는 Dockerfile의 주요 명령어와 이미지 빌드 방법을 정리했다. 이번 글에서는 빌드 환경과 실행 환경을 분리하는 멀티 스테이지 빌드(Multi stage build) 를 살펴본다. 멀티 스테이지 빌드를 사용하면 컴파일러, 패키지 관리자, 개발용 의존성처…
VS Code에서 Remote SSH로 Ubuntu 서버에 접속하려고 했지만 Permission denied (publickey) 오류가 발생했다. SSH 키의 passphrase 입력창까지 나타났기 때문에 키 파일 자체는 인식되는 것처럼 보였지만, 실제로는 설정된 개…
1. 개요 우분투 서버에 Codex CLI를 설치한 뒤 ChatGPT 계정으로 로그인하려고 했는데, 브라우저를 자유롭게 사용할 수 없는 환경이라 로그인 과정에서 막힌 적이 있다. 이럴 때 codex login device auth 명령을 사용하면 장치 코드 방식으로 인…
1. 개요 지금까지 다룬 스프링 빈은 모두 컨테이너가 시작될 때 생성되어 종료될 때까지 유지되는 싱글톤이었다. 하지만 스프링은 이 외에도 빈이 살아있는 범위, 즉 스코프를 다양하게 지정할 수 있게 해준다. 특히 매번 새 인스턴스가 필요한 프로토타입 스코프를 싱글톤 빈과…
1. 개요 파이썬 프로젝트를 여러 개 다루다 보면 프로젝트마다 필요한 패키지 버전이 다른 경우가 생긴다. 시스템에 설치된 파이썬 하나에 모든 프로젝트의 패키지를 전역으로 설치하면 프로젝트 간 버전 충돌이 나기 쉽고, 최근 우분투는 시스템 파이썬 환경을 pip로 직접 건…