aws ec2 인스턴스생성과 ssh 접속 셋팅은 완료된 상태로 인지하고 작성한 문서입니다.
ec2 스팩
amazon linux2
인스턴스 유형 t2.medium
yum 업데이트
sudo yum update -y
- sudo amazon-linux-extras install docker- sudo service docker start
- sudo usermod -a -G docker ec2-user
- ec2-user 계정에 docker 실행 권한을 부여합니다.
- sudo chkconfig docker on
- 부팅시 docker 자동 실행입니다.
- sudo reboot
- 재부팅을 하여 docker 설치 완료 합니다.
- Docker CE (Community Edition)설치
Docker-compose 설치
- sudo curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
- GitHub에서 docker-compose 바이너리를 복사 합니다.
- sudo chmod +x /usr/local/bin/docker-compose
- docker-compose에 권한을 부여합니다.
- docker-compose version
- 성공적으로 설치 되었는지 버전 확인 합니다.
Docker-compose yaml 파일 만들기
파일 경로는 고민하다가 이쪽이 적당한거 같아서
/usr/src 에 docker 파일 만듬
cd /usr/src
mkdir docker
그다음 yaml을 만듭니다.
sudo vim docker-compose.yaml
docker-compose yaml 파일을 인터넷에서 가져옵니다.
version: '3'
services:
elasticsearch:
user: $USER
container_name: elasticsearch
image: elasticsearch:7.9.0
ports:
- 9200:9200
- 9300:9300
networks:
- default
volumes:
- ./esdata:/usr/share/elasticsearch/data
environment:
- discovery.type=single-node
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- TZ=Asia/Seoul
user: root
restart: always
privileged: true
kibana:
container_name: kibana
image: kibana:7.9.0
ports:
- 5601:5601
networks:
- default
environment:
ELASTICSERCH_UTL: http://elasticsearch:9200
ELASTICSEARCH_HOSTS: http://elasticsearch:9200
environment:
- TZ=Asia/Seoul
restart: always
privileged: true
networks:
default:
external:
name: elastic
ElasticSearch와 Kibana는 7.9.0버전을 사용하였으며, 네트워크는 미리 생성해둔 elastic 네트워크를 사용합니다.
docker network create elastic
엘라스틱서치 실행과정에서
에러가 생겨서 검색결과를 반영하여 파일을 수정하였습니다.
수정된 내용은 다음과 같다.
- volumes: - ./esdata:/usr/share/elasticsearch/data
- user: $USER
이것저것 찾다보니 엘라스틱 서치 실행과정 에러 해결방법
해당 docker 파일에 있는 path 에서 실행하여 해결
sudo chown -R 1000:root esdata
sudo chown -R 1000:root elasticsearch/
udo chown -R 1000:root elasticsearch/data/
3개를 그냥 다 실행하였다….
docker 기본 명령어
- 컨테이너 확인
docker ps
- 전체 스텁
docker stop $(docker ps -a -q) - 전체 삭제
docker rm $(docker ps -a -q) - 전체 이미지 삭제
docker rmi $(docker images -q)
docker-compose up -d
-d 를 주는 이유는 백그라운드 실행
https://docs.docker.com/compose/reference/up/
엘라스틱 서치 정상 동작

키바나 정상 동작

참고자료 :
https://dog-developers.tistory.com/235
https://changhyunit.tistory.com/71
https://sean-ma.tistory.com/36
https://gist.github.com/npearce/6f3c7826c7499587f00957fee62f8ee9