[Docker-Compose] Docker Compose의 x-접두사로 효율적인 환경 구성 및 관리하기
·
DevOps/Docker
1. 시작하며Docker Compose는 컨테이너화된 애플리케이션을 효율적으로 관리하기 위한 필수 도구입니다. 하지만 서비스가 복잡해질수록 반복되는 설정과 환경변수의 증가로 인해 Compose 파일이 비대해지고 관리가 어려워질 수 있습니다.이 문제를 해결하기 위해 Docker Compose는 x-접두사와 YAML 앵커(anchor)를 활용한 사용자 정의 확장 기능을 제공합니다. 이를 통해 공통 설정을 모듈화하고 반복되는 내용을 간결하게 관리할 수 있습니다. 이번 글에서는 Docker Compose에서 x-접두사와 YAML 앵커를 활용해 공통 설정과 명령어를 재사용하는 방법을 Kafka 및 Hadoop + Spark 클러스터 구성 사례를 통해 살펴보겠습니다.2. Docker Compose의 x-접두사란?2..
[CICD] Nginx + Docker Compose로 구현한 Blue-Green 배포 전략
·
DevOps/CICD
1. 시작하며사이드 프로젝트를 운영하면서 백엔드 코드 변경이 빈번하게 발생했습니다. 신규 기능 추가뿐만 아니라 리팩토링 작업과 성능 개선을 포함한 지속적인 코드 품질 향상을 위해 이루어진 작업이었습니다. 하지만 배포 단계에서 서비스 중단이 발생할 가능성이 큰 문제가 되었습니다.서비스 중단은 사용자 경험에 직접적인 영향을 미칠 수 있으며, 특히 실시간으로 사용되는 서비스라면 이는 치명적일 수 있습니다. 서비스 운영 중에도 배포가 이루어지더라도 사용자에게 중단 없는 경험을 제공하는 것이 목표였습니다.이를 위해 무중단 배포 전략을 도입하기로 결정했습니다. 기존에는 간단히 Docker 컨테이너를 종료하고 새 컨테이너를 띄우는 방식으로 배포를 진행했지만, 이 과정에서 서비스가 일시적으로 중단되는 문제가 있었습니다..
[Monitoring] Portainer로 Sub Server Docker 환경 관리하기
·
DevOps/Monitoring
1. 시작하며최근 사이드 프로젝트를 진행하며 Docker 환경에서 여러 컨테이너를 효과적으로 관리하기 위해 Portainer를 활용해보기로 했습니다. 특히, Main Server(192.168.0.25)에 있는 Docker 컨테이너뿐만 아니라 Sub Server(192.168.0.47)의 컨테이너들도 GUI 기반 툴을 이용해 한곳에서 관리하고자 했습니다. 이를 위해 Sub Server의 Docker Daemon 설정을 수정하고 Portainer Agent를 설치하여 Main Server의 Portainer에서 Sub Server를 연결하는 과정을 정리해보았습니다.2. Sub Server에서 Docker Daemon 설정 수정Main Server에서 Sub Server의 Docker 컨테이너를 관리하려면 ..