{"id":788,"date":"2023-10-22T19:03:20","date_gmt":"2023-10-22T22:03:20","guid":{"rendered":"https:\/\/thiagosantos.com\/blog\/?p=788"},"modified":"2023-10-22T20:29:54","modified_gmt":"2023-10-22T23:29:54","slug":"rodando-o-elastic-search-no-docker","status":"publish","type":"post","link":"https:\/\/thiagosantos.com\/blog\/788\/docker\/rodando-o-elastic-search-no-docker\/","title":{"rendered":"Rodando o Elastic Search no Docker"},"content":{"rendered":"\n<p>Tive a impress\u00e3o, lendo alguns tutoriais em portugu\u00eas, que o material estava um tanto desatualizado. Isso me fez perder algum tempo tentando entender o que eu estava fazendo de errado at\u00e9 entender que: eu n\u00e3o estava fazendo nada errado. O passo a passo estava correto, mas a forma de chamar as APIs do Elastic Search \u00e9 que haviam mudados. Fa\u00e7o esse post para n\u00e3o me deixar esquecer de como funciona e tamb\u00e9m para facilitar a vida de quem quer subir um container local para desenvolvimento ou para brincar antes de jogar para produ\u00e7\u00e3o.<\/p>\n\n\n\n<!--more-->\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Instalando<\/strong><\/h2>\n\n\n\n<p>\u00c9 necess\u00e1rio que voc\u00ea j\u00e1 tenha o Docker instalado e rodando na sua m\u00e1quina. Antes de come\u00e7ar o primeiro passo tenha certeza de que o Docker est\u00e1 rodando! Todas as instru\u00e7\u00f5es s\u00e3o via linha de comando e funcionam igualmente no PowerShell e no terminal do Linux (eu uso o Ubuntu 22.04).<\/p>\n\n\n\n<p>O primeiro passo aqui \u00e9 baixar a imagem do Elastic Search que atualmente est\u00e1 na 8.10.4. Vou usar o reposit\u00f3rio de imagens do pr\u00f3prio Elastic pois no reposit\u00f3rio do Docker a \u00faltima vers\u00e3o \u00e9 a 8.10.2 no dia de hoje e quero usar a \u00faltima porqu\u00ea sim. Voc\u00ea pode verificar outras vers\u00f5es aqui <a href=\"https:\/\/www.docker.elastic.co\/r\/elasticsearch\">https:\/\/www.docker.elastic.co\/r\/elasticsearch<\/a>.<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\ndocker pull docker.elastic.co\/elasticsearch\/elasticsearch:8.10.4\n<\/pre><\/div>\n\n\n<p>Se tudo der certo o resultado vai ser algo parecido com a imagem abaixo. No meu caso rodando no Ubuntu tive que rodar o comando com o<mark style=\"background-color:#e6e6e6\" class=\"has-inline-color\"> sudo <\/mark> .<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-style-default\"><img loading=\"lazy\" decoding=\"async\" width=\"810\" height=\"298\" src=\"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/\/2023\/10\/image.png\" alt=\"Docker Pull na imagem do Elastic Search\" class=\"wp-image-789\" srcset=\"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image.png 810w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-300x110.png 300w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-768x283.png 768w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-624x230.png 624w\" sizes=\"auto, (max-width: 810px) 100vw, 810px\" \/><figcaption class=\"wp-element-caption\">docker pull na imagem do Elastic Search<\/figcaption><\/figure>\n\n\n\n<p>Podemos ver que na minha lista de imagens salvas localmente temos l\u00e1 o Elastic Search na vers\u00e3o 8.10.4. Lembrando que no meu caso tive que adicionar o<mark style=\"background-color:#e6e6e6\" class=\"has-inline-color\"> sudo <\/mark>.<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\ndocker image ls\n<\/pre><\/div>\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"860\" height=\"108\" src=\"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/\/2023\/10\/image-1.png\" alt=\"Docker Image LS para listar as imagens baixadas e mostrando a imagem do Elastic Search\" class=\"wp-image-793\" srcset=\"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-1.png 860w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-1-300x38.png 300w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-1-768x96.png 768w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-1-624x78.png 624w\" sizes=\"auto, (max-width: 860px) 100vw, 860px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Rodando<\/h2>\n\n\n\n<p>At\u00e9 aqui todos os tutoriais foram bem. Alguns instalando diredo do reposit\u00f3rio do Docker outros do reposit\u00f3rio do ElasticSearch, mas daqui em diante \u00e9 o que estava me confundindo um tanto, mas que vai ficar bem claro aqui.<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\ndocker run --name elasticboladao -p 9200:9200 -it -m 1GB docker.elastic.co\/elasticsearch\/elasticsearch:8.10.4\n<\/pre><\/div>\n\n\n<h3 class=\"wp-block-heading\">Deu erro?<\/h3>\n\n\n\n<p>Em alguns tutoriais o container subia e tudo funcionava magicamente bem, mas quando eu tentei encontrava alguns erros e que seguindo o tutorial me dava a entender de que eu estava fazendo alguma coisa errada. Seguindo o passo a passo at\u00e9 aqui dava um erro tanto rodando no Windows quanto rodando no Ubuntu, ent\u00e3o se voc\u00ea rodou at\u00e9 aqui e se esbarrou com o erro <mark style=\"background-color:#f8ed04\" class=\"has-inline-color\">node validation exception\\n[1] bootstrap checks failed. You must address the points described in the following [1] lines before starting Elasticsearch.\\nbootstrap check failure [1] of [1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]<\/mark> siga a recomenda\u00e7\u00e3o abaixo, caso n\u00e3o tenha tido problema e o comando tenha rodado pode pular direto para o t\u00f3pico &#8220;Testando&#8221;.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"246\" src=\"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/\/2023\/10\/image-2-1024x246.png\" alt=\"Erro ao rodar o comando docker run com a imagem do Elastic Search\" class=\"wp-image-815\" srcset=\"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-2-1024x246.png 1024w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-2-300x72.png 300w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-2-768x184.png 768w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-2-1536x369.png 1536w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-2-624x150.png 624w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-2.png 1907w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Significa que voc\u00ea precisa aumentar o valor do vm.max_map_count para o valor minimo de 262144, como recomendando pelo Elastic Search. No Ubuntu basta rodar o comando baixo.<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: bash; title: ; notranslate\" title=\"\">\nsysctl -w vm.max_map_count=262144\n<\/pre><\/div>\n\n\n<p>Se voc\u00ea quiser deixar esse valor minimo definido como padr\u00e3o no seu sistema sempre voc\u00ea s\u00f3 precisa editar o arquivo <mark style=\"background-color:#e6e6e6\" class=\"has-inline-color\">\/etc\/sysctl.conf<\/mark> e adicionar ao final dele o <em>vm.max_map_count=262144<\/em>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Deu bom?<\/h3>\n\n\n\n<p>Se voc\u00ea n\u00e3o teve o problema acima, ou fez o ajuste necess\u00e1rio, depois de rodar o comando docker run e ao final da processo de inicializa\u00e7\u00e3o do container voc\u00ea provavelmente vai ver essa tela na primeira.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"912\" height=\"425\" src=\"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/\/2023\/10\/image-4.png\" alt=\"Docker Run rodado com sucesso mostrando as informa\u00e7\u00f5es de senha do Elastic Search e outras informa\u00e7\u00f5es\" class=\"wp-image-818\" srcset=\"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-4.png 912w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-4-300x140.png 300w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-4-768x358.png 768w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-4-624x291.png 624w\" sizes=\"auto, (max-width: 912px) 100vw, 912px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Testando<\/h2>\n\n\n\n<p>Esse foi um outro ponto confuso em que cheguei depois de seguir os tutoriais. O pessoal simplesmente lan\u00e7ava na URL <mark style=\"background-color:#e6e6e6\" class=\"has-inline-color\">http:\/\/localhost:9200<\/mark> e entrava com uma autentica\u00e7\u00e3o b\u00e1sica e conseguia fazer algumas consultas direto no navegador. No entanto temos ai duas possibilidade: No Windows, rodando o Docker Desktop com WSL ativado, n\u00e3o consegui acessar a URL diretamente pelo navegador. S\u00f3 consegui fazer as requisi\u00e7\u00f5es usando o Postman\/Insomnia ou pelo CURL. No Ubuntu funcionou com https, mas n\u00e3o com o http e at\u00e9 a\u00ed tudo bem, pois n\u00e3o pretendo usar o navegador mesmo. Acessar via navegador era mais um teste simples para verificar se estava funcionando.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"851\" src=\"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/\/2023\/10\/image-5-1024x851.png\" alt=\"Elastic Search sendo acessado via navegador na porta 9200\" class=\"wp-image-820\" srcset=\"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-5-1024x851.png 1024w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-5-300x249.png 300w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-5-768x638.png 768w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-5-624x518.png 624w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-5.png 1218w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Depois de autenticar com o usu\u00e1rio <mark style=\"background-color:#e6e6e6\" class=\"has-inline-color\">elastic<\/mark> e com a senha que \u00e9 gerada quando o elastic \u00e9 iniciado (da uma olhada na imagem do Deu Bom?).<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"641\" height=\"410\" src=\"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/\/2023\/10\/image-6.png\" alt=\"Retorno efetivo com as informa\u00e7\u00f5es do Elastic Search\" class=\"wp-image-821\" srcset=\"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-6.png 641w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-6-300x192.png 300w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-6-624x399.png 624w\" sizes=\"auto, (max-width: 641px) 100vw, 641px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Insomnia\/Postman<\/h3>\n\n\n\n<p>Tanto usando o Insomnia quanto o Postman talvez seja necess\u00e1rio desabilitar a valida\u00e7\u00e3o de certificados SSL, ao menos tive que fazer isso, j\u00e1 que o certificado gerado localmente n\u00e3o \u00e9 realmente reconhecido.<\/p>\n\n\n\n<p>Antes de voc\u00ea realizar uma requisi\u00e7\u00e3o voc\u00ea precisa configurar a autentica\u00e7\u00e3o do tipo basic e h\u00e1 duas formas de fazer isso a primeira \u00e9 usando o recurso direto do Postman ou do Insomina que basicamente \u00e9 ir na aba de <em>Authorization<\/em>, escolher a op\u00e7\u00e3o <em>Basic<\/em> preencher o usu\u00e1rio com o <mark style=\"background-color:#e6e6e6\" class=\"has-inline-color\">elastic<\/mark> e a senha com aquela que j\u00e1 sabemos. <\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"967\" height=\"388\" src=\"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/\/2023\/10\/image-7.png\" alt=\"\" class=\"wp-image-823\" srcset=\"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-7.png 967w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-7-300x120.png 300w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-7-768x308.png 768w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-7-624x250.png 624w\" sizes=\"auto, (max-width: 967px) 100vw, 967px\" \/><figcaption class=\"wp-element-caption\">Autentica\u00e7\u00e3o Basic direto no Insomnia<\/figcaption><\/figure>\n\n\n\n<p>A outra forma \u00e9 configurar diretamente no Headers o cabe\u00e7alho <em>Authorization<\/em> com o usu\u00e1rio e senha separado por &#8220;:&#8221; encodados na <em>base64<\/em>. Eu particularmente prefiro essa pois j\u00e1 fica mais baixo n\u00edvel e mais pr\u00f3ximo da chamada que vou precisar fazer via c\u00f3digo. Algo como <mark style=\"background-color:#e6e6e6\" class=\"has-inline-color\">elastic:O*<em>ZMpUEhF*<\/em>+5cHAYW3yR<\/mark> viraria <mark style=\"background-color:#e6e6e6\" class=\"has-inline-color\">ZWxhc3RpYzpPKlpNcFVFaEYqKzVjSEFZVzN5Ug==<\/mark>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1017\" height=\"367\" src=\"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/\/2023\/10\/image-8.png\" alt=\"\" class=\"wp-image-824\" srcset=\"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-8.png 1017w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-8-300x108.png 300w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-8-768x277.png 768w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-8-624x225.png 624w\" sizes=\"auto, (max-width: 1017px) 100vw, 1017px\" \/><\/figure>\n\n\n\n<p>\u00c9 isso, objetivo aqui foi alcan\u00e7ado que era deixar rodando o ElasticSearch com Docker. Fiquem a vontade pra tirar d\u00favidas dessa instala\u00e7\u00e3o ou mesmo outras coisas que tenha dito e n\u00e3o tenha ficado claro.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Pra fechar<\/h2>\n\n\n\n<p>Se voc\u00ea precisar gerar uma nova senha para o usu\u00e1rio elastic voc\u00ea pode em um outro terminal enviar um comando para essa troca.<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\ndocker exec -it elasticboladao bin\/elasticsearch-reset-password -u elastic\n<\/pre><\/div>\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"892\" height=\"150\" src=\"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/\/2023\/10\/image-9.png\" alt=\"\" class=\"wp-image-832\" srcset=\"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-9.png 892w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-9-300x50.png 300w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-9-768x129.png 768w, https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/2023\/10\/image-9-624x105.png 624w\" sizes=\"auto, (max-width: 892px) 100vw, 892px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Refer\u00eancias<\/h2>\n\n\n\n<p><a href=\"https:\/\/www.elastic.co\/guide\/en\/elasticsearch\/reference\/current\/docker.html\">https:\/\/www.elastic.co\/guide\/en\/elasticsearch\/reference\/current\/docker.html<\/a><br><a href=\"https:\/\/www.elastic.co\/guide\/en\/elasticsearch\/reference\/current\/vm-max-map-count.html\">https:\/\/www.elastic.co\/guide\/en\/elasticsearch\/reference\/current\/vm-max-map-count.html<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Tive a impress\u00e3o, lendo alguns tutoriais em portugu\u00eas, que o material estava um tanto desatualizado. Isso me fez perder algum tempo tentando entender o que eu estava fazendo de errado at\u00e9 entender que: eu n\u00e3o estava fazendo nada errado. O passo a passo estava correto, mas a forma de chamar as APIs do Elastic Search [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":826,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[199,206],"tags":[200,207,208,209],"class_list":["post-788","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-docker","category-elasticsearch","tag-docker","tag-elasticsearch","tag-installing-docker","tag-rodando-o-docker"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Rodando o Elastic Search no Docker - Pereira, Thiago Santos.<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/thiagosantos.com\/blog\/788\/docker\/rodando-o-elastic-search-no-docker\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Rodando o Elastic Search no Docker - Pereira, Thiago Santos.\" \/>\n<meta property=\"og:description\" content=\"Tive a impress\u00e3o, lendo alguns tutoriais em portugu\u00eas, que o material estava um tanto desatualizado. Isso me fez perder algum tempo tentando entender o que eu estava fazendo de errado at\u00e9 entender que: eu n\u00e3o estava fazendo nada errado. O passo a passo estava correto, mas a forma de chamar as APIs do Elastic Search [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/thiagosantos.com\/blog\/788\/docker\/rodando-o-elastic-search-no-docker\/\" \/>\n<meta property=\"og:site_name\" content=\"Pereira, Thiago Santos.\" \/>\n<meta property=\"article:published_time\" content=\"2023-10-22T22:03:20+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-10-22T23:29:54+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/\/2023\/10\/Sem-titulo.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1280\" \/>\n\t<meta property=\"og:image:height\" content=\"720\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Pereira, Thiago Santos\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Pereira, Thiago Santos\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. tempo de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/thiagosantos.com\/blog\/788\/docker\/rodando-o-elastic-search-no-docker\/\",\"url\":\"https:\/\/thiagosantos.com\/blog\/788\/docker\/rodando-o-elastic-search-no-docker\/\",\"name\":\"Rodando o Elastic Search no Docker - Pereira, Thiago Santos.\",\"isPartOf\":{\"@id\":\"https:\/\/thiagosantos.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/thiagosantos.com\/blog\/788\/docker\/rodando-o-elastic-search-no-docker\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/thiagosantos.com\/blog\/788\/docker\/rodando-o-elastic-search-no-docker\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/\/2023\/10\/Sem-titulo.jpg\",\"datePublished\":\"2023-10-22T22:03:20+00:00\",\"dateModified\":\"2023-10-22T23:29:54+00:00\",\"author\":{\"@id\":\"https:\/\/thiagosantos.com\/blog\/#\/schema\/person\/56683334c52027e200fd9270c17c629d\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/thiagosantos.com\/blog\/788\/docker\/rodando-o-elastic-search-no-docker\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/thiagosantos.com\/blog\/788\/docker\/rodando-o-elastic-search-no-docker\/#primaryimage\",\"url\":\"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/\/2023\/10\/Sem-titulo.jpg\",\"contentUrl\":\"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/\/2023\/10\/Sem-titulo.jpg\",\"width\":1280,\"height\":720,\"caption\":\"Logo do ElasticSearch e Docker juntos\"},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/thiagosantos.com\/blog\/#website\",\"url\":\"https:\/\/thiagosantos.com\/blog\/\",\"name\":\"Pereira, Thiago Santos.\",\"description\":\"the fun of code.\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/thiagosantos.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/thiagosantos.com\/blog\/#\/schema\/person\/56683334c52027e200fd9270c17c629d\",\"name\":\"Pereira, Thiago Santos\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/thiagosantos.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/ed936469f86e5f07085e7540b2c0a115?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/ed936469f86e5f07085e7540b2c0a115?s=96&d=mm&r=g\",\"caption\":\"Pereira, Thiago Santos\"},\"description\":\"Um cara que mora no Rio e n\u00e3o sabe nadar.\",\"sameAs\":[\"http:\/\/thiagosantos.com\"],\"url\":\"https:\/\/thiagosantos.com\/blog\/author\/admin\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Rodando o Elastic Search no Docker - Pereira, Thiago Santos.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/thiagosantos.com\/blog\/788\/docker\/rodando-o-elastic-search-no-docker\/","og_locale":"pt_BR","og_type":"article","og_title":"Rodando o Elastic Search no Docker - Pereira, Thiago Santos.","og_description":"Tive a impress\u00e3o, lendo alguns tutoriais em portugu\u00eas, que o material estava um tanto desatualizado. Isso me fez perder algum tempo tentando entender o que eu estava fazendo de errado at\u00e9 entender que: eu n\u00e3o estava fazendo nada errado. O passo a passo estava correto, mas a forma de chamar as APIs do Elastic Search [&hellip;]","og_url":"https:\/\/thiagosantos.com\/blog\/788\/docker\/rodando-o-elastic-search-no-docker\/","og_site_name":"Pereira, Thiago Santos.","article_published_time":"2023-10-22T22:03:20+00:00","article_modified_time":"2023-10-22T23:29:54+00:00","og_image":[{"width":1280,"height":720,"url":"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/\/2023\/10\/Sem-titulo.jpg","type":"image\/jpeg"}],"author":"Pereira, Thiago Santos","twitter_misc":{"Escrito por":"Pereira, Thiago Santos","Est. tempo de leitura":"7 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/thiagosantos.com\/blog\/788\/docker\/rodando-o-elastic-search-no-docker\/","url":"https:\/\/thiagosantos.com\/blog\/788\/docker\/rodando-o-elastic-search-no-docker\/","name":"Rodando o Elastic Search no Docker - Pereira, Thiago Santos.","isPartOf":{"@id":"https:\/\/thiagosantos.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/thiagosantos.com\/blog\/788\/docker\/rodando-o-elastic-search-no-docker\/#primaryimage"},"image":{"@id":"https:\/\/thiagosantos.com\/blog\/788\/docker\/rodando-o-elastic-search-no-docker\/#primaryimage"},"thumbnailUrl":"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/\/2023\/10\/Sem-titulo.jpg","datePublished":"2023-10-22T22:03:20+00:00","dateModified":"2023-10-22T23:29:54+00:00","author":{"@id":"https:\/\/thiagosantos.com\/blog\/#\/schema\/person\/56683334c52027e200fd9270c17c629d"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/thiagosantos.com\/blog\/788\/docker\/rodando-o-elastic-search-no-docker\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/thiagosantos.com\/blog\/788\/docker\/rodando-o-elastic-search-no-docker\/#primaryimage","url":"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/\/2023\/10\/Sem-titulo.jpg","contentUrl":"https:\/\/thiagosantos.com\/blog\/wp-content\/uploads\/\/2023\/10\/Sem-titulo.jpg","width":1280,"height":720,"caption":"Logo do ElasticSearch e Docker juntos"},{"@type":"WebSite","@id":"https:\/\/thiagosantos.com\/blog\/#website","url":"https:\/\/thiagosantos.com\/blog\/","name":"Pereira, Thiago Santos.","description":"the fun of code.","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/thiagosantos.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":"Person","@id":"https:\/\/thiagosantos.com\/blog\/#\/schema\/person\/56683334c52027e200fd9270c17c629d","name":"Pereira, Thiago Santos","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/thiagosantos.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/ed936469f86e5f07085e7540b2c0a115?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/ed936469f86e5f07085e7540b2c0a115?s=96&d=mm&r=g","caption":"Pereira, Thiago Santos"},"description":"Um cara que mora no Rio e n\u00e3o sabe nadar.","sameAs":["http:\/\/thiagosantos.com"],"url":"https:\/\/thiagosantos.com\/blog\/author\/admin\/"}]}},"_links":{"self":[{"href":"https:\/\/thiagosantos.com\/blog\/wp-json\/wp\/v2\/posts\/788","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/thiagosantos.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/thiagosantos.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/thiagosantos.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/thiagosantos.com\/blog\/wp-json\/wp\/v2\/comments?post=788"}],"version-history":[{"count":20,"href":"https:\/\/thiagosantos.com\/blog\/wp-json\/wp\/v2\/posts\/788\/revisions"}],"predecessor-version":[{"id":836,"href":"https:\/\/thiagosantos.com\/blog\/wp-json\/wp\/v2\/posts\/788\/revisions\/836"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/thiagosantos.com\/blog\/wp-json\/wp\/v2\/media\/826"}],"wp:attachment":[{"href":"https:\/\/thiagosantos.com\/blog\/wp-json\/wp\/v2\/media?parent=788"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/thiagosantos.com\/blog\/wp-json\/wp\/v2\/categories?post=788"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/thiagosantos.com\/blog\/wp-json\/wp\/v2\/tags?post=788"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}