nginx-proxy 이미지 없이 docker compose 를 활용하여 직접 MSA 구성

2025. 10. 20. 09:32·devops

목표

nginx-proxy 이미지 없이 docker compose 를 활용하여 직접 MSA 구성한다.

과정

docker compose 구성

  1. 기존 docker compose 을 복사하기

    cp compose.yaml ../manual_lb/
  2. docker compose 파일 수정

    version: '3.8'
    name: awsgoo
    services:
    nginx-proxy:
     # image: nginx/nginx-proxy: 기존 이미지 제거
     build: ../../docker_file/nginx
     # volumes: 도커 데몬과 통신할 수 있는 소켓 마운트 X -> 내가 직접 만든 이미지는 docker gen 의 프로그램이 없기 때문에 필요 없음
     #   - /var/run/docker.sock:/tmp/docker.sock:ro
     ports:
       - "9889:80"
     depends_on:
       - blog
     deploy:
       resources:
         limits:
           cpus: '0.20'
           memory: 50M
         reservations:
           cpus: '0.05'
           memory: 20M
    
    blog:
     build: ../../docker_file/httpd
     deploy:
       mode: replicated
       replicas: 1 # https://docs.docker.com/compose/compose-file/deploy/#replicas
       resources: # https://docs.docker.com/compose/compose-file/compose-file-v3/#resources
         limits:
           cpus: '0.05'
           memory: 50M
         reservations:
           cpus: '0.01'
           memory: 20M
     expose:
       - "80"
     environment:
       - VIRTUAL_HOST=aws.google.com,172.31.86.218,ec2-54-236-8-204.compute-1.amazonaws.com
       - VIRTUAL_PORT=80

    nginx 설정 변경

    nginx 설정 파일 default.conf 에서 컨테이너 주소 변경(컨테이너 이름일 달라졌으므로 이름을 변경한다.)

docker compose 으로 컨테이너 구동

docker compose -f compose.yaml up -d
image

결론

기존 이미지 대신 직접 만든 nginx 이미지를 활용하여 docker compose 하여 msa 환경을 구성하였다. 기존 nginx-proxy 에는 docker-gen 프로그램이 있어 docker daemon으로 부터 이미지를 받아 뒷 단의 서비스의 replicas 변경되었을 때 자동으로 nginx 설정에 등록되었지만 내가 직접 만든 nginx 이미지에는 그런 기능이 존재하지 않아 불가능하다.

'devops' 카테고리의 다른 글

Spring Cloud Gateway 와 Spring Eureka 를 통해 MSA 환경 구축  (0) 2025.10.20
SPRING GATEWAY 를 이용한 MSA( 멀티 서비스, 멀티 서버 구현하기)  (0) 2025.10.20
GW LB 를 이용한 무중단 배포(업데이트)  (0) 2025.10.20
docker 를 활용하여 직접 msa 구성  (0) 2025.10.20
docker compose 를 이용한 서비스 디스커버리 및 scale out - in  (0) 2025.10.15
'devops' 카테고리의 다른 글
  • SPRING GATEWAY 를 이용한 MSA( 멀티 서비스, 멀티 서버 구현하기)
  • GW LB 를 이용한 무중단 배포(업데이트)
  • docker 를 활용하여 직접 msa 구성
  • docker compose 를 이용한 서비스 디스커버리 및 scale out - in
khw7385
khw7385
khw7385 님의 블로그 입니다.
  • khw7385
    khw7385 님의 블로그
    khw7385
  • 전체
    오늘
    어제
    • 분류 전체보기 (43) N
      • 코딩테스트 (7)
      • 자바 (3)
      • 스프링 (3)
      • cs (7)
        • 자료구조 (3)
        • 알고리즘 (1)
        • 객체지향 (3)
      • 개발일지 (6)
        • 트러블슈팅 (1)
      • 데이터베이스 (3)
        • Redis (2)
        • MySQL (1)
      • 기타 (2)
      • devops (6)
      • LG CNS AM INSPIRE (6) N
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
khw7385
nginx-proxy 이미지 없이 docker compose 를 활용하여 직접 MSA 구성
상단으로

티스토리툴바