Docker를 통해 ElasticSearch를 설치했다.
이제 본격적으로 Spring에
ElasticSearch를적용해보고자 한다.
1. 동작화면
- GIF

- 이미지


2. Elasticsearch를 docker로 실행하기
- 터미널(또는 CMD)에 아래 명령어를 입력한다.
docker network create elasticsearch
Docker network를 만든다. 위의 코드에서 elasticsearch 말고 다른 이름을 넣어도 된다.
- elasticsearch 이미지 받기
docker pull docker.elastic.co/elasticsearch/elasticsearch:8.18.1
- ElasitcSearch 실행하기_ Container 시작하기
docker run --name es01 \
--net elastic \
-p 9200:9200 \
-m 1GB \
-e "discovery.type=single-node" \
-e "ELASTIC_PASSWORD=123456789" \
-v esdata01:/usr/share/elasticsearch/data \
-d docker.elastic.co/elasticsearch/elasticsearch:8.18.1
es01 부분에 다른 이름을 넣으면 그 이름이 컨테이너 이름이 된다. 비밀번호는 잘 기억해두자.
- 컨테이너 확인
docker ps

- http_ca.crt 인증서 꺼내기
docker cp es01:/usr/share/elasticsearch/config/certs/http_ca.crt .
Elasticsearch 8.x는 기본적으로 HTTPS 보안 연결을 사용해야한다. 그래서 Spring이 Elasticsearch를 믿을 수 있도록 http_ca.crt 인증서를 가져와야 한다.
- Elasticsearch 접속 테스트
curl --cacert http_ca.crt -u elastic:123456789 https://localhost:9200
성공하면 이런 JSON이 나온다.
{ "name" : "es01",
"cluster_name" : "docker-cluster",
"version" : { "number" : "8.18.1" },
"tagline" : "You Know, for Search" }
- Spring에 인증서 넣기

- build.gradle 추가
아래 코드를 추가한다.
implementation 'org.springframework.boot:spring-boot-starter-data-elasticsearch'
- application.properties 설정
# Elasticsearch
spring.elasticsearch.uris=https://localhost:9200
spring.elasticsearch.username=elastic
spring.elasticsearch.password=123456789
# Elasticsearch CA 인증서
spring.ssl.bundle.pem.es-ca.truststore.certificate=classpath:http_ca.crt
spring.elasticsearch.restclient.ssl.bundle=es-ca
이렇게 하면 elasticsearch를 사용하기 위한 기초 단계는 모두 완료되었다.
'💻 프로젝트 > 👑 VIP 초대장 💌' 카테고리의 다른 글
| [Spring, React] 코드를 입력하면 고객 등급에 맞는 페이지를 결과로 보내기 (0) | 2026.05.15 |
|---|---|
| [Spring, React] Elasticsearch 스프링 코드 작성하기! (0) | 2026.05.03 |
| [Spring, React] Keycloak을 본격적으로 사용하기 전, 무엇을 할 지 구조 설계하기. (0) | 2026.03.24 |
| [Spring, React] jsx와 css 파일 연결, 연결된 css가 아니어도 jsx 페이지에 영향을 주는 경우 (0) | 2026.03.17 |
| [Spring, React, Mac] Elasticsearch를 위해 Docker 설치하기. (0) | 2026.03.10 |