2015. 09. 05 도커 서울 밋업 4번째(Open Container Korea 주최).
elasticsearch에 은전한닢 한국어 형태소 분석기를 적용하고 운영한 사례 발표.
- 사용자 사전별로 이미지를 만들기
- nginx를 이용해 http basic auth 적용하기
11. 은전한닢 설치하기2
• mecab-ko : 형태소 분석기
• mecab-ko-dic : 한국어 사전
• mecab-java : 메모리 누수가 해결된 버전
• elasticsearch mecab-ko 플러그인
2
엘라스틱서치(elasticsearch)에 한글 형태소 분석기 은전한잎(eunjeon) 적용하기 - nacyot의 프로그래밍 이야
기
Docker Seoul Meetup #4, 2015 11
12. $ tar zxfv mecab-ko-XX.tar.gz
$ cd mecab-ko-XX
$ ./configure && make && make check
$ sudo make install
$ tar zxfv mecab-ko-dic-XX.tar.gz
$ cd mecab-ko-dic-XX
$ ./configure && make
$ sudo make install
#... 생략
자세한 설치는 관련문서2
참고
2
엘라스틱서치(elasticsearch)에 한글 형태소 분석기 은전한잎(eunjeon) 적용하기 - nacyot의 프로그래밍 이야
기
Docker Seoul Meetup #4, 2015 12
13. • automake 버전 문제로 설치 도중 에러가 나는 경우,
다음과 같이 할 수 있습니다.
• libmecab.so.2를 찾을 수 없는 에러가 나는 경우, 다
음과 같이 할 수 있습니다.
!Docker Seoul Meetup #4, 2015 13
33. ONBUILD
n42corp/elastcisearch Dockerfile
#... 생략
# 사용자 사전 설치
ONBUILD COPY servicecustom.csv /opt/mecab-ko-dic-2.0.1-20150707/user-dic/servicecustom.csv
ONBUILD RUN cd /opt/mecab-ko-dic-2.0.1-20150707 &&
tools/add-userdic.sh &&
make install
# 유의어 추가
ONBUILD COPY synonym.txt /elasticsearch/config/synonym.txt
#... 생략
Docker Seoul Meetup #4, 2015 33
34. 서비스별 이미지 빌드
Dockerfile 생성후 사용자사전(servicecustom.csv),
유의어(synonym.txt)를4
Dockerfile과 같은 폴더에 복
사
FROM n42corp/elasticsearch
$ docker build -t n42corp/elasticsearch-n42 .
4
https://github.com/n42corp/search-ko-dic
Docker Seoul Meetup #4, 2015 34
42. 서버에 직접 접근해서 실행
• 서버마다 일일이 접근해야 된다
• 환경변수, 볼륨 등 실행 옵션을 스크립트로 만들고 백업
• 서비스 중단 시간이 발생되므로 haproxy, nginx,
ELB등을 구성할 필요가 있다
• 작은 규모에서는 현실적인 대안이라고 생각
Docker Seoul Meetup #4, 2015 42
43. AWS ECS
• ECS 사용요금이 별도로 없다
• ELB와 연동해서 무중단 배포를 실현
• ECS 인스턴스용 OS를 사용해야되서 서버 한대로 기
존 서비스와 ECS를 동시에 사용하지 못하는것에서 요
금 발생
+ kubenertes, fleet
• 한대 정도 실행하고 싶은데 쓰기에는 부담
Docker Seoul Meetup #4, 2015 43
44. docker-machine & docker-compose
• 개발 컴퓨터에서 원격의 서버에 접근(docker-
machine)
• 미리 정의된 yaml 파일로 실행(docker-compose)
• docker-compose가 production 에서 아직 비추
• 무중단 배포를 위해 어떻게 구성 해야할지 고민
Docker Seoul Meetup #4, 2015 44