-
Docker로 Elasticsearch + Kibana 개발환경 구성하기개발 2023. 11. 24. 05:19
회사에서 검색 시스템 개발을 맡게 되었고 아파치 루씬 기반의 검색엔진인 Elasticsearch를 사용하기로 하였다.
로컬 개발 환경을 간단하게 구축하기 위해 도커를 활용해 구성하였다.
ES, Kibana 컨테이너 실행하기
우선, Elasticsearch와 Kibana가 사용할 도커 네트워크를 만든다.
docker network create [NETWORK_NAME]
Elasticsearch와 Kibana 컨테이너를 실행한다.
버전은 8.10.4를 사용했다.
필요한 포트들을 포트포워딩 한다.
9200번 포트: Elasticsearch API
9300번 포트: Elasticsearch 클러스터 내 에서 노드간 통신에 사용
5601번 포트: Kibana 대시보드
개발 환경 이므로 "discovery.type=single-node" 환경 변수를 설정하여 싱글 노드로 설정한다. default는 멀티 노드.
docker run -d --name [ES_CONTAINER_NAME] --net [NETWORK_NAME] -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:[TAG]
docker run -d --name [KIBANA_CONTAINER_NAME] --net [NETWORK_NAME] -p 5601:5601 kibana:[TAG]
ES + Kibana 연동
키바나까지 컨테이너로 실행한 후, http://localhost:5601로 접속하면 아래와 같이 토큰을 요구한다.
elasticsearch-reset-password 명령어로 비밀번호를 발급 한다. ID는 elastic이다.
docker exec -it [ES_CONTAINER_NAME] /usr/share/elasticsearch/bin/elasticsearch-reset-password -u elastic
elasticsearch-create-enrollment-token 명령어로 Enrollment token을 발급한다.
docker exec -it [ES_CONTAINER_NAME] /usr/share/elasticsearch/bin/elasticsearch-create-enrollment-token -s kibana
토큰을 복붙해주자.
6자리 인증코드를 요구하는데, bin/kibana-verification-code 명령어로 인증코드를 확인할 수 있다.
docker exec -it [KIBANA_CONTAINER_NAME] bin/kibana-verification-code
인증 코드까지 입력하고 나면 아래와 같은 화면을 볼수 있다.
완료가 되면 위에서 받은 계정 정보로 로그인 할 수 있다.
끝.
'개발' 카테고리의 다른 글
[Spring Webflux] #3 스프링 웹플럭스에서 AOP 제대로 사용하기 (0) 2024.04.11 [Spring Webflux] #2 내가 스프링 웹플럭스를 공부한 방법 (0) 2024.04.10 [Spring Webflux] #1 Reactive Streams 이해하기 (0) 2023.02.25 [Spring Webflux] #0 Webflux 기본 개념 (0) 2023.02.22 라즈베리파이 우분투 서버 구축 #2 Docker Engine 설치 (0) 2022.12.06