whdudev

실행중인 도커 컴포즈 종료 후 플로그인 추가 재실행 본문

도커 쿠버네티스

실행중인 도커 컴포즈 종료 후 플로그인 추가 재실행

whdudev 2025. 6. 16. 12:41

 

✅  실습 요약 

실행중인 도커 컴포즈(Elasticsearch + kibana)를 종료 후 플러그인 추가하고 재실행 

 

docker ps : 실행 중인 컨테이너 확인 

 

 

cd 경로(docker 컴포즈 Elasticsearch + kibans)

컴포즈 파일이 존재하는 경로로 이동

 

 

docker compose down (종료)

 

 

 vi Dockerfile

FROM docker.elastic.co/elasticsearch/elasticsearch:8.17.4 

# Nori Analyzer 플러그인 설치
RUN bin/elasticsearch-plugin install analysis-nori 

 

 

vi compose.yml

 

 

변경 아래처럼

services:
  elastic:
    build:
      context: .
      dockerfile: Dockerfile 
    ports:
      - 9200:9200 # 9200번 포트에서 Elasticsearch 실행
    environment:
      # 아래 설정은 개발/테스트 환경에서 간단하게 테스트하기 위한 옵션 (운영 환경에서는 설정하면 안 됨)
      - discovery.type=single-node # 단일 노드 (지금은 알 필요 없음)
      - xpack.security.enabled=false # 보안 설정
      - xpack.security.http.ssl.enabled=false # 보안 설정
  kibana:
    image: docker.elastic.co/kibana/kibana:8.17.4 # 8.17.4 버전
    ports:
      - 5601:5601 # 5601번 포트에서 kibana 실행
    environment:
      - ELASTICSEARCH_HOSTS=http://elastic:9200 # kibana에게 통신할 Elasticsearch 주소 알려주기

 

 

 

docker compose up -d

다시 컴포즈 실행~

구성 설명 

docker Docker CLI 명령어 실행기
compose Docker Compose 기능을 사용하겠다는 의미 (예전에는 docker-compose라는 별도 명령이었으나 현재는 통합됨)
up 정의된 컨테이너들을 생성(create) 하고 시작(start) 시킴
-d detached 모드, 즉 백그라운드에서 실행되도록 설정
실행 과정 요약 
  1. 현재 디렉터리의 docker-compose.yml 파일을 읽음
  2. 정의된 서비스들(컨테이너들)을 빌드함 (필요할 경우 Dockerfile을 기반으로)
  3. 네트워크, 볼륨 등 필요한 리소스를 자동으로 생성
  4. 각 서비스를 컨테이너로 실행
  5. -d 옵션 덕분에 터미널을 점유하지 않고 백그라운드로 실행됨

 

 

✅  결론

Nori Analyzer를 사용하려면 플러그인을 설치해야 한다. 플러그인을 설치한 채로 Docker 컨테이너를 다시 띄우기 성공.