{"id":1375,"date":"2020-08-22T20:45:42","date_gmt":"2020-08-22T11:45:42","guid":{"rendered":"https:\/\/www.skyer9.pe.kr\/wordpress\/?p=1375"},"modified":"2023-01-19T15:42:30","modified_gmt":"2023-01-19T06:42:30","slug":"install-elasticsearch-with-docker","status":"publish","type":"post","link":"https:\/\/www.skyer9.pe.kr\/wordpress\/?p=1375","title":{"rendered":"Install ElasticSearch with docker-compose"},"content":{"rendered":"<h1>Install ElasticSearch with docker-compose<\/h1>\n<p><a href=\"https:\/\/www.elastic.co\/guide\/en\/elasticsearch\/reference\/current\/docker.html\">\ucc38\uc870<\/a><\/p>\n<p>\ub450 \uac1c \uc774\uc0c1\uc758 \uc11c\ubc84 \uc778\uc2a4\ud134\uc2a4\uac04\uc758 \ud074\ub7ec\uc2a4\ud130 \uad6c\uc131\uc740 Docker Swarm \uc744 \uc774\uc6a9\ud574\uc57c \ud55c\ub2e4\uace0 \ud569\ub2c8\ub2e4.<\/p>\n<h2>\uc120\ud589\uc791\uc5c5<\/h2>\n<ul>\n<li><a href=\"https:\/\/www.skyer9.pe.kr\/wordpress\/?p=1263\">\ub3c4\ucee4<\/a> \uc124\uce58<\/li>\n<\/ul>\n<h2>docker \ubc84\uc804\uc774 \ub192\uc740 \uacbd\uc6b0<\/h2>\n<p>\ubcfc\ub968 \uc0dd\uc131\uc744 compose \ud30c\uc77c\uc5d0\uc11c \uac19\uc774 \ud560 \uc218 \uc788\ub2e4.<\/p>\n<pre><code class=\"language-bash\">version: &quot;3&quot;\n\nservices:\n  elasticsearch-test:\n    image: docker.elastic.co\/elasticsearch\/elasticsearch:7.9.0\n    container_name: elasticsearch-test\n    environment:\n      - node.name=elasticsearch-test\n      - cluster.name=es-test-cluster\n      - discovery.seed_hosts=elasticsearch-test\n      - cluster.initial_master_nodes=elasticsearch-test\n      - network.host=0.0.0.0\n      - http.cors.enabled=true\n      - http.cors.allow-origin=*\n      - bootstrap.memory_lock=true\n      - &quot;ES_JAVA_OPTS=-Xms512m -Xmx512m&quot;\n    ulimits:\n      memlock:\n        soft: -1\n        hard: -1\n    volumes:\n      - es_data:\/usr\/share\/elasticsearch\/data\n    ports:\n      - 9200:9200\n      - 9300:9300\n    restart: always\n\nvolumes:\n    es_data:<\/code><\/pre>\n<h2>docker \ubc84\uc804\uc774 \ub0ae\uc740 \uacbd\uc6b0<\/h2>\n<h3>Install ElasticSearch<\/h3>\n<pre><code class=\"language-bash\">mkdir elasticsearch\ncd elasticsearch\n\n# docker v19 \ubd80\ud130 volume \uba85\ub839 \uc0ac\uc6a9\uac00\ub2a5\ndocker volume create --name=es01_data\ndocker volume create --name=es02_data\ndocker volume ls\n\nsudo sysctl -w vm.max_map_count=262144\necho &quot;vm.max_map_count=262144&quot; | sudo tee -a \/etc\/sysctl.conf\n\nvi docker-compose.yml<\/code><\/pre>\n<pre><code class=\"language-yaml\">version: &#039;2.2&#039;\n\nvolumes:\n  es01_data:\n    external: true\n  es02_data:\n    external: true\n\nservices:\n  es01:\n    image: docker.elastic.co\/elasticsearch\/elasticsearch:7.9.0\n    container_name: es01\n    environment:\n      - node.name=es01\n      - cluster.name=es-cluster\n      - discovery.seed_hosts=es01\n      - cluster.initial_master_nodes=es01\n      - network.host=0.0.0.0\n      - http.cors.enabled=true\n      - http.cors.allow-origin=*\n      - bootstrap.memory_lock=true\n      - &quot;ES_JAVA_OPTS=-Xms512m -Xmx512m&quot;\n    ulimits:\n      memlock:\n        soft: -1\n        hard: -1\n    volumes:\n      - es01_data:\/usr\/share\/elasticsearch\/data\n    ports:\n      - 9200:9200\n      - 9300:9300\n    restart: always\n\n  es02:\n    image: docker.elastic.co\/elasticsearch\/elasticsearch:7.9.0\n    container_name: es02\n    environment:\n      - node.name=es02\n      - cluster.name=es-cluster\n      - discovery.seed_hosts=es01\n      - cluster.initial_master_nodes=es01\n      - network.host=0.0.0.0\n      - http.cors.enabled=true\n      - http.cors.allow-origin=*\n      - bootstrap.memory_lock=true\n      - &quot;ES_JAVA_OPTS=-Xms512m -Xmx512m&quot;\n    ulimits:\n      memlock:\n        soft: -1\n        hard: -1\n    depends_on:\n      - es01\n    volumes:\n      - es02_data:\/usr\/share\/elasticsearch\/data\n    ports:\n      - 9201:9200\n      - 9301:9300\n    restart: always<\/code><\/pre>\n<h2>\uc2e4\ud589<\/h2>\n<pre><code class=\"language-bash\">docker-compose up -d\n\ndocker container logs es01\ndocker container logs es02\n\n# docker-compose stop\n# docker-compose start\n# docker-compose down\n\ncurl -X GET &quot;localhost:9200&quot;\ncurl -X GET &quot;localhost:9201&quot;\ncurl -XGET &quot;localhost:9200\/_cat\/health?v&amp;pretty&quot;<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Install ElasticSearch with docker-compose \ucc38\uc870 \ub450 \uac1c \uc774\uc0c1\uc758 \uc11c\ubc84 \uc778\uc2a4\ud134\uc2a4\uac04\uc758 \ud074\ub7ec\uc2a4\ud130 \uad6c\uc131\uc740 Docker Swarm \uc744 \uc774\uc6a9\ud574\uc57c \ud55c\ub2e4\uace0 \ud569\ub2c8\ub2e4. \uc120\ud589\uc791\uc5c5 \ub3c4\ucee4 \uc124\uce58 docker \ubc84\uc804\uc774 \ub192\uc740 \uacbd\uc6b0 \ubcfc\ub968 \uc0dd\uc131\uc744 compose \ud30c\uc77c\uc5d0\uc11c \uac19\uc774 \ud560 \uc218 \uc788\ub2e4. version: &quot;3&quot; services: elasticsearch-test: image: docker.elastic.co\/elasticsearch\/elasticsearch:7.9.0 container_name: elasticsearch-test environment: &#8211; node.name=elasticsearch-test &#8211; cluster.name=es-test-cluster &#8211; discovery.seed_hosts=elasticsearch-test &#8211; cluster.initial_master_nodes=elasticsearch-test &#8211; network.host=0.0.0.0 &#8211; http.cors.enabled=true -\u2026 <span class=\"read-more\"><a href=\"https:\/\/www.skyer9.pe.kr\/wordpress\/?p=1375\">Read More &raquo;<\/a><\/span><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[],"class_list":["post-1375","post","type-post","status-publish","format-standard","hentry","category-elasticsearch"],"_links":{"self":[{"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/1375","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1375"}],"version-history":[{"count":17,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/1375\/revisions"}],"predecessor-version":[{"id":7501,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/1375\/revisions\/7501"}],"wp:attachment":[{"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1375"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1375"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.skyer9.pe.kr\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1375"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}