{"id":115285,"date":"2023-11-19T16:33:55","date_gmt":"2023-11-19T19:33:55","guid":{"rendered":"https:\/\/fluency.io\/br\/blog\/docker-build-especificando-o-dockerfile\/"},"modified":"2023-11-19T16:33:55","modified_gmt":"2023-11-19T19:33:55","slug":"docker-build-especificando-o-dockerfile","status":"publish","type":"post","link":"https:\/\/homolog.fluency.io\/br\/blog\/docker-build-especificando-o-dockerfile\/","title":{"rendered":"Docker Build: Especificando o Dockerfile"},"content":{"rendered":"<p><body><\/p>\n<h1>Por que especificar o Dockerfile no Docker Build?<\/h1>\n<h2>Personaliza\u00e7\u00e3o<\/h2>\n<p>Ao especificar o Dockerfile, voc\u00ea tem a liberdade de personalizar a imagem do cont\u00eainer de acordo com suas necessidades. Voc\u00ea pode adicionar pacotes, definir vari\u00e1veis de ambiente, configurar permiss\u00f5es e muito mais. Essa flexibilidade permite que voc\u00ea crie imagens de cont\u00eainer otimizadas e adaptadas para suas aplica\u00e7\u00f5es espec\u00edficas.<\/p>\n<h2>Reprodutibilidade<\/h2>\n<p>Especificar o Dockerfile garante reprodutibilidade no processo de constru\u00e7\u00e3o do cont\u00eainer. Ao definir todas as etapas necess\u00e1rias no Dockerfile, \u00e9 poss\u00edvel garantir que a imagem do cont\u00eainer seja constru\u00edda da mesma maneira, independentemente do ambiente ou do sistema em que est\u00e1 sendo executada. Isso \u00e9 especialmente importante em ambientes de desenvolvimento e produ\u00e7\u00e3o, onde a consist\u00eancia e a confiabilidade s\u00e3o cruciais.<\/p>\n<h2>Controle de vers\u00e3o<\/h2>\n<p>Ao utilizar o Dockerfile, voc\u00ea pode controlar e versionar as altera\u00e7\u00f5es feitas na imagem do cont\u00eainer. Cada instru\u00e7\u00e3o no Dockerfile representa uma etapa no processo de constru\u00e7\u00e3o, permitindo que voc\u00ea acompanhe e reverta altera\u00e7\u00f5es, se necess\u00e1rio. Isso facilita a colabora\u00e7\u00e3o em equipe e o rastreamento de altera\u00e7\u00f5es ao longo do tempo.<\/p>\n<h2>Automatiza\u00e7\u00e3o<\/h2>\n<p>Especificar o Dockerfile permite a automa\u00e7\u00e3o do processo de constru\u00e7\u00e3o do cont\u00eainer. Com um Dockerfile bem definido, voc\u00ea pode usar ferramentas como o Docker Build para construir e reconstruir automaticamente a imagem do cont\u00eainer. Isso \u00e9 especialmente \u00fatil em cen\u00e1rios de integra\u00e7\u00e3o cont\u00ednua e entrega cont\u00ednua (CI\/CD), onde a automa\u00e7\u00e3o \u00e9 fundamental para agilizar o desenvolvimento e a implanta\u00e7\u00e3o de aplica\u00e7\u00f5es.<\/p>\n<h2>Sintaxe e estrutura do Dockerfile<\/h2>\n<p>Para especificar o Dockerfile corretamente, \u00e9 importante entender a sintaxe e a estrutura do arquivo. O Dockerfile consiste em uma s\u00e9rie de instru\u00e7\u00f5es, cada uma em uma linha separada. Cada instru\u00e7\u00e3o come\u00e7a com uma palavra-chave seguida de argumentos, se aplic\u00e1vel. Vamos dar uma olhada em algumas das instru\u00e7\u00f5es mais comuns utilizadas no Dockerfile:<\/p>\n<h3>FROM<\/h3>\n<p>Especifica a imagem base que ser\u00e1 usada como ponto de partida para a constru\u00e7\u00e3o do cont\u00eainer.<\/p>\n<h3>RUN<\/h3>\n<p>Executa comandos no shell dentro do cont\u00eainer durante o processo de constru\u00e7\u00e3o.<\/p>\n<h3>COPY<\/h3>\n<p>Copia arquivos e diret\u00f3rios do host para o sistema de arquivos do cont\u00eainer.<\/p>\n<h3>ENV<\/h3>\n<p>Define vari\u00e1veis de ambiente dentro do cont\u00eainer.<\/p>\n<h3>WORKDIR<\/h3>\n<p>Define o diret\u00f3rio de trabalho para as instru\u00e7\u00f5es subsequentes.<\/p>\n<h3>EXPOSE<\/h3>\n<p>Informa ao Docker que o cont\u00eainer escuta em uma determinada porta em tempo de execu\u00e7\u00e3o.<\/p>\n<p>Essas s\u00e3o apenas algumas das instru\u00e7\u00f5es dispon\u00edveis no Dockerfile. \u00c9 importante consultar a documenta\u00e7\u00e3o oficial do Docker para obter uma lista completa das instru\u00e7\u00f5es dispon\u00edveis e entender como us\u00e1-las corretamente.<\/p>\n<h2>Comandos e diretivas essenciais para especificar o Dockerfile<\/h2>\n<p>Ao especificar o Dockerfile, existem alguns comandos e diretivas essenciais que voc\u00ea deve ter em mente. Essas instru\u00e7\u00f5es ajudam a garantir a efici\u00eancia e a seguran\u00e7a da imagem do cont\u00eainer. Vamos dar uma olhada em algumas delas:<\/p>\n<ul>\n<li>Utilize imagens base oficiais<\/li>\n<li>Minimize as camadas da imagem<\/li>\n<li>Limpeza de arquivos tempor\u00e1rios<\/li>\n<li>Utilize .dockerignore<\/li>\n<\/ul>\n<h2>Melhores pr\u00e1ticas para especificar o Dockerfile no Docker Build<\/h2>\n<p>Ao especificar o Dockerfile no Docker Build, \u00e9 importante seguir algumas melhores pr\u00e1ticas para garantir a efici\u00eancia, seguran\u00e7a e reprodutibilidade do processo. Aqui est\u00e3o algumas dicas \u00fateis:<\/p>\n<ul>\n<li>Mantenha o Dockerfile leg\u00edvel<\/li>\n<li>Crie imagens pequenas<\/li>\n<li>Use alpine como imagem base<\/li>\n<li>Verifique a integridade dos arquivos<\/li>\n<li>Fa\u00e7a testes regulares<\/li>\n<\/ul>\n<h2>Conclus\u00e3o<\/h2>\n<p>Especificar o Dockerfile no Docker Build \u00e9 essencial para construir e gerenciar cont\u00eaineres de forma eficiente, segura e reprodut\u00edvel. Ao entender a import\u00e2ncia do Dockerfile, a sintaxe e estrutura corretas, os comandos e diretivas essenciais, bem como as melhores pr\u00e1ticas, voc\u00ea estar\u00e1 preparado para criar imagens de cont\u00eainer otimizadas e personalizadas para suas aplica\u00e7\u00f5es. Lembre-se sempre de seguir as melhores pr\u00e1ticas, testar regularmente suas imagens e manter-se atualizado com as atualiza\u00e7\u00f5es e corre\u00e7\u00f5es de seguran\u00e7a do Docker. Com o Docker Build e o Dockerfile, voc\u00ea ter\u00e1 o controle necess\u00e1rio para construir e implantar seus cont\u00eaineres de maneira eficiente e confi\u00e1vel.<\/p>\n<h2>Comandos e diretivas essenciais para especificar o Dockerfile<\/h2>\n<p>Ao especificar o Dockerfile no Docker Build, \u00e9 importante conhecer alguns comandos e diretivas essenciais que ajudam a configurar e personalizar a constru\u00e7\u00e3o do cont\u00eainer. Essas instru\u00e7\u00f5es s\u00e3o fundamentais para garantir que a imagem do cont\u00eainer seja criada corretamente e atenda aos requisitos da aplica\u00e7\u00e3o. Vamos explorar algumas das principais diretivas e comandos a serem considerados:<\/p>\n<ul>\n<li>FROM<\/li>\n<li>RUN<\/li>\n<li>COPY<\/li>\n<li>ENV<\/li>\n<li>WORKDIR<\/li>\n<li>EXPOSE<\/li>\n<\/ul>\n<h2>Melhores pr\u00e1ticas para especificar o Dockerfile no Docker Build<\/h2>\n<p>Al\u00e9m de conhecer os comandos e diretivas essenciais do Dockerfile, existem algumas melhores pr\u00e1ticas que podem otimizar o processo de constru\u00e7\u00e3o do cont\u00eainer e garantir a efici\u00eancia e seguran\u00e7a da imagem resultante. Vamos destacar algumas dessas pr\u00e1ticas:<\/p>\n<ul>\n<li>Mantenha o Dockerfile leg\u00edvel<\/li>\n<li>Crie imagens pequenas<\/li>\n<li>Use .dockerignore<\/li>\n<li>Utilize a cache de camadas<\/li>\n<li>Teste a imagem do cont\u00eainer<\/li>\n<\/ul>\n<h2>Conclus\u00e3o<\/h2>\n<p>A especifica\u00e7\u00e3o correta do Dockerfile no Docker Build \u00e9 fundamental para criar e gerenciar cont\u00eaineres de maneira eficiente e segura. Conhecer os comandos e diretivas essenciais, juntamente com as melhores pr\u00e1ticas, ajudar\u00e1 a criar imagens de cont\u00eainer personalizadas e otimizadas para suas aplica\u00e7\u00f5es. Lembre-se de utilizar uma sintaxe correta, manter o Dockerfile leg\u00edvel, criar imagens pequenas e testar a imagem do cont\u00eainer antes de implant\u00e1-la em um ambiente de produ\u00e7\u00e3o. Com o Docker Build e o Dockerfile, voc\u00ea ter\u00e1 o controle necess\u00e1rio para construir e implantar cont\u00eaineres confi\u00e1veis e eficientes.<\/p>\n<h2>A <a target=\"_blank\" href=\"https:\/\/fluency.io\/br\/blog\/cursos\/#ci\u00eancia de dados\/?utm_source=blog\" rel=\"noopener\">Awari<\/a> \u00e9 a melhor plataforma para aprender sobre ci\u00eancia de dados no Brasil.<\/h2>\n<p>Aqui voc\u00ea encontra cursos com aulas ao vivo, mentorias individuais com os melhores profissionais do mercado e suporte de carreira personalizado para dar seu pr\u00f3ximo passo profissional e aprender habilidades como Data Science, Data Analytics, Machine Learning e mais.<\/p>\n<p>J\u00e1 pensou em aprender de maneira individualizada com profissionais que atuam em empresas como Nubank, Amazon e Google? <a target=\"_blank\" href=\"https:\/\/app.fluency.io\/br\/blog\/candidatura?&#038;utm_source=blog&#038;utm_campaign=paragrafofinal\" rel=\"noopener\">Clique aqui<\/a> para se inscrever na Awari e come\u00e7ar a construir agora mesmo o pr\u00f3ximo cap\u00edtulo da sua carreira em dados.<\/p>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Docker Build: Por que especificar o Dockerfile \u00e9 importante?<\/p>\n<p>Descubra por que \u00e9 essencial especificar o Dockerfile ao usar o Docker Build. Aprenda sobre personaliza\u00e7\u00e3o, reprodutibilidade, controle de vers\u00e3o e automatiza\u00e7\u00e3o. Conhe\u00e7a a sintaxe e estrutura corretas do Dockerfile e as melhores pr\u00e1ticas para garantir efici\u00eancia e seguran\u00e7a.<\/p>\n","protected":false},"author":9,"featured_media":27883,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":[186],"meta":{"inline_featured_image":false,"footnotes":""},"categories":[229],"tags":[],"trilha":[],"class_list":["post-115285","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-skills","format-artigos"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Docker Build: Especificando o Dockerfile - Fluency.io Brasil<\/title>\n<meta name=\"description\" content=\"Docker Build: Por que especificar o Dockerfile \u00e9 importante? Descubra por que \u00e9 essencial especificar o Dockerfile ao usar o Docker Build. Aprenda sobre p...\" \/>\n<meta name=\"robots\" content=\"noindex, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Docker Build: Especificando o Dockerfile - Fluency.io Brasil\" \/>\n<meta property=\"og:description\" content=\"Docker Build: Por que especificar o Dockerfile \u00e9 importante? Descubra por que \u00e9 essencial especificar o Dockerfile ao usar o Docker Build. Aprenda sobre p...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fluency.io\/br\/blog\/docker-build-especificando-o-dockerfile\/\" \/>\n<meta property=\"og:site_name\" content=\"Fluency.io Brasil\" \/>\n<meta property=\"article:published_time\" content=\"2023-11-19T19:33:55+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"kaue\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. tempo de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/fluency.io\\\/br\\\/blog\\\/docker-build-especificando-o-dockerfile\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/fluency.io\\\/br\\\/blog\\\/docker-build-especificando-o-dockerfile\\\/\"},\"author\":{\"name\":\"kaue\",\"@id\":\"https:\\\/\\\/homolog.fluency.io\\\/br\\\/#\\\/schema\\\/person\\\/7b3b2b50ba17b7f2ad0cce0a40bfa00a\"},\"headline\":\"Docker Build: Especificando o Dockerfile\",\"datePublished\":\"2023-11-19T19:33:55+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/fluency.io\\\/br\\\/blog\\\/docker-build-especificando-o-dockerfile\\\/\"},\"wordCount\":1053,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/fluency.io\\\/br\\\/blog\\\/docker-build-especificando-o-dockerfile\\\/#primaryimage\"},\"thumbnailUrl\":\"\",\"articleSection\":[\"Skills\"],\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/fluency.io\\\/br\\\/blog\\\/docker-build-especificando-o-dockerfile\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/fluency.io\\\/br\\\/blog\\\/docker-build-especificando-o-dockerfile\\\/\",\"url\":\"https:\\\/\\\/fluency.io\\\/br\\\/blog\\\/docker-build-especificando-o-dockerfile\\\/\",\"name\":\"Docker Build: Especificando o Dockerfile - Fluency.io Brasil\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/homolog.fluency.io\\\/br\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/fluency.io\\\/br\\\/blog\\\/docker-build-especificando-o-dockerfile\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/fluency.io\\\/br\\\/blog\\\/docker-build-especificando-o-dockerfile\\\/#primaryimage\"},\"thumbnailUrl\":\"\",\"datePublished\":\"2023-11-19T19:33:55+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/homolog.fluency.io\\\/br\\\/#\\\/schema\\\/person\\\/7b3b2b50ba17b7f2ad0cce0a40bfa00a\"},\"description\":\"Docker Build: Por que especificar o Dockerfile \u00e9 importante? Descubra por que \u00e9 essencial especificar o Dockerfile ao usar o Docker Build. Aprenda sobre p...\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/fluency.io\\\/br\\\/blog\\\/docker-build-especificando-o-dockerfile\\\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/fluency.io\\\/br\\\/blog\\\/docker-build-especificando-o-dockerfile\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/fluency.io\\\/br\\\/blog\\\/docker-build-especificando-o-dockerfile\\\/#primaryimage\",\"url\":\"\",\"contentUrl\":\"\",\"width\":1027,\"height\":420},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/fluency.io\\\/br\\\/blog\\\/docker-build-especificando-o-dockerfile\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"In\u00edcio\",\"item\":\"https:\\\/\\\/homolog.fluency.io\\\/br\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Docker Build: Especificando o Dockerfile\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/homolog.fluency.io\\\/br\\\/#website\",\"url\":\"https:\\\/\\\/homolog.fluency.io\\\/br\\\/\",\"name\":\"Fluency.io Brasil\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/homolog.fluency.io\\\/br\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/homolog.fluency.io\\\/br\\\/#\\\/schema\\\/person\\\/7b3b2b50ba17b7f2ad0cce0a40bfa00a\",\"name\":\"kaue\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/bdd3958fa53019cfd8f789c0a49a730e7ba40a1d20cb42c9ced7646285842479?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/bdd3958fa53019cfd8f789c0a49a730e7ba40a1d20cb42c9ced7646285842479?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/bdd3958fa53019cfd8f789c0a49a730e7ba40a1d20cb42c9ced7646285842479?s=96&d=mm&r=g\",\"caption\":\"kaue\"},\"url\":\"https:\\\/\\\/homolog.fluency.io\\\/br\\\/author\\\/kaue\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Docker Build: Especificando o Dockerfile - Fluency.io Brasil","description":"Docker Build: Por que especificar o Dockerfile \u00e9 importante? Descubra por que \u00e9 essencial especificar o Dockerfile ao usar o Docker Build. Aprenda sobre p...","robots":{"index":"noindex","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"pt_BR","og_type":"article","og_title":"Docker Build: Especificando o Dockerfile - Fluency.io Brasil","og_description":"Docker Build: Por que especificar o Dockerfile \u00e9 importante? Descubra por que \u00e9 essencial especificar o Dockerfile ao usar o Docker Build. Aprenda sobre p...","og_url":"https:\/\/fluency.io\/br\/blog\/docker-build-especificando-o-dockerfile\/","og_site_name":"Fluency.io Brasil","article_published_time":"2023-11-19T19:33:55+00:00","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"kaue","Est. tempo de leitura":"5 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fluency.io\/br\/blog\/docker-build-especificando-o-dockerfile\/#article","isPartOf":{"@id":"https:\/\/fluency.io\/br\/blog\/docker-build-especificando-o-dockerfile\/"},"author":{"name":"kaue","@id":"https:\/\/homolog.fluency.io\/br\/#\/schema\/person\/7b3b2b50ba17b7f2ad0cce0a40bfa00a"},"headline":"Docker Build: Especificando o Dockerfile","datePublished":"2023-11-19T19:33:55+00:00","mainEntityOfPage":{"@id":"https:\/\/fluency.io\/br\/blog\/docker-build-especificando-o-dockerfile\/"},"wordCount":1053,"commentCount":0,"image":{"@id":"https:\/\/fluency.io\/br\/blog\/docker-build-especificando-o-dockerfile\/#primaryimage"},"thumbnailUrl":"","articleSection":["Skills"],"inLanguage":"pt-BR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fluency.io\/br\/blog\/docker-build-especificando-o-dockerfile\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/fluency.io\/br\/blog\/docker-build-especificando-o-dockerfile\/","url":"https:\/\/fluency.io\/br\/blog\/docker-build-especificando-o-dockerfile\/","name":"Docker Build: Especificando o Dockerfile - Fluency.io Brasil","isPartOf":{"@id":"https:\/\/homolog.fluency.io\/br\/#website"},"primaryImageOfPage":{"@id":"https:\/\/fluency.io\/br\/blog\/docker-build-especificando-o-dockerfile\/#primaryimage"},"image":{"@id":"https:\/\/fluency.io\/br\/blog\/docker-build-especificando-o-dockerfile\/#primaryimage"},"thumbnailUrl":"","datePublished":"2023-11-19T19:33:55+00:00","author":{"@id":"https:\/\/homolog.fluency.io\/br\/#\/schema\/person\/7b3b2b50ba17b7f2ad0cce0a40bfa00a"},"description":"Docker Build: Por que especificar o Dockerfile \u00e9 importante? Descubra por que \u00e9 essencial especificar o Dockerfile ao usar o Docker Build. Aprenda sobre p...","breadcrumb":{"@id":"https:\/\/fluency.io\/br\/blog\/docker-build-especificando-o-dockerfile\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fluency.io\/br\/blog\/docker-build-especificando-o-dockerfile\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/fluency.io\/br\/blog\/docker-build-especificando-o-dockerfile\/#primaryimage","url":"","contentUrl":"","width":1027,"height":420},{"@type":"BreadcrumbList","@id":"https:\/\/fluency.io\/br\/blog\/docker-build-especificando-o-dockerfile\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"In\u00edcio","item":"https:\/\/homolog.fluency.io\/br\/"},{"@type":"ListItem","position":2,"name":"Docker Build: Especificando o Dockerfile"}]},{"@type":"WebSite","@id":"https:\/\/homolog.fluency.io\/br\/#website","url":"https:\/\/homolog.fluency.io\/br\/","name":"Fluency.io Brasil","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/homolog.fluency.io\/br\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":"Person","@id":"https:\/\/homolog.fluency.io\/br\/#\/schema\/person\/7b3b2b50ba17b7f2ad0cce0a40bfa00a","name":"kaue","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/secure.gravatar.com\/avatar\/bdd3958fa53019cfd8f789c0a49a730e7ba40a1d20cb42c9ced7646285842479?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/bdd3958fa53019cfd8f789c0a49a730e7ba40a1d20cb42c9ced7646285842479?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/bdd3958fa53019cfd8f789c0a49a730e7ba40a1d20cb42c9ced7646285842479?s=96&d=mm&r=g","caption":"kaue"},"url":"https:\/\/homolog.fluency.io\/br\/author\/kaue\/"}]}},"_links":{"self":[{"href":"https:\/\/homolog.fluency.io\/br\/wp-json\/wp\/v2\/posts\/115285","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/homolog.fluency.io\/br\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/homolog.fluency.io\/br\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/homolog.fluency.io\/br\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/homolog.fluency.io\/br\/wp-json\/wp\/v2\/comments?post=115285"}],"version-history":[{"count":0,"href":"https:\/\/homolog.fluency.io\/br\/wp-json\/wp\/v2\/posts\/115285\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/homolog.fluency.io\/br\/wp-json\/"}],"wp:attachment":[{"href":"https:\/\/homolog.fluency.io\/br\/wp-json\/wp\/v2\/media?parent=115285"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/homolog.fluency.io\/br\/wp-json\/wp\/v2\/categories?post=115285"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/homolog.fluency.io\/br\/wp-json\/wp\/v2\/tags?post=115285"},{"taxonomy":"format","embeddable":true,"href":"https:\/\/homolog.fluency.io\/br\/wp-json\/wp\/v2\/format?post=115285"},{"taxonomy":"trilha","embeddable":true,"href":"https:\/\/homolog.fluency.io\/br\/wp-json\/wp\/v2\/trilha?post=115285"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}