ElasticSearch, docker-compose로 개발 환경 구성하기

아주 쉬운건데 나같은 도커 초보들을 위해 공유해본다.

docker-compose.yml 파일 작성

elasticsearch:
  build: images/elasticsearch
  container_name: elastic-test-elasticsearch
  environment:
    - "ES_JAVA_OPTS=-Xms2048m -Xmx2048m"
    - "xpack.security.enabled=false"
  ports:
    - "9200:9200"
  volumes:
    - ./data/elastic:/usr/share/elasticsearch/data
  ulimits:
    memlock:
      soft: -1
      hard: -1


kibana:
  image: docker.elastic.co/kibana/kibana:6.2.2
  container_name: elastic-test-kibana
  ports:
    - "5601:5601"
  volumes:
    - ./config/kibana.yml:/usr/share/kibana/config/kibana.yml
  links:
    - elasticsearch

kibana는 docker store의 공식이미지를 바로 가져와서 사용했지만 elasticsearch는 플러그인을 몇개 추가로 설치를 해야 했기 때문에 따로 Dockerfile을 구성했다.

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

RUN elasticsearch-plugin install https://github.com/netcrazy/elasticsearch-jaso-analyzer/releases/download/v6.2.3/jaso-analyzer-plugin-6.2.3.0-plugin.zip

따로 플러그인 설치할 필요가 없으면 build: images/elasticsearch 대신 image: docker.elastic.co/elasticsearch/elasticsearch:6.2.2 넣어주면 된다.

이후 docker-compose up 실행하고 http://localhost:5601 에 접속하여 kibana가 잘 나오는지 확인하면 끝~!