{"id":3670,"date":"2023-04-04T12:15:08","date_gmt":"2023-04-04T15:15:08","guid":{"rendered":"https:\/\/www.gauchocode.com\/docker-containers-start-a-beginners-guide-to-docker-basics\/"},"modified":"2024-08-07T10:48:14","modified_gmt":"2024-08-07T13:48:14","slug":"docker-containers-start-a-beginners-guide-to-docker-basics","status":"publish","type":"post","link":"https:\/\/www.gauchocode.com\/pt-br\/docker-containers-start-a-beginners-guide-to-docker-basics\/","title":{"rendered":"Introdu\u00e7\u00e3o ao Docker: Como come\u00e7ar com cont\u00eaineres Docker"},"content":{"rendered":"\n<p>Se voc\u00ea \u00e9 novo no mundo do Docker, pode estar se perguntando o que s\u00e3o os cont\u00eaineres Docker e como come\u00e7ar a us\u00e1-los. Docker \u00e9 uma ferramenta poderosa que permite criar e executar aplica\u00e7\u00f5es de maneira port\u00e1til e eficiente. Neste artigo, vamos cobrir o b\u00e1sico sobre cont\u00eaineres Docker e mostrar como come\u00e7ar a us\u00e1-los.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">O que s\u00e3o os cont\u00eaineres Docker?<\/h2>\n\n\n\n<p>Os cont\u00eaineres Docker s\u00e3o ambientes leves, port\u00e1teis e autossuficientes que permitem empacotar e executar aplica\u00e7\u00f5es com todas as suas depend\u00eancias. Os cont\u00eaineres s\u00e3o semelhantes \u00e0s m\u00e1quinas virtuais (VMs), mas s\u00e3o muito mais eficientes e f\u00e1ceis de usar. Os cont\u00eaineres n\u00e3o requerem um sistema operacional separado, portanto, podem ser executados mais rapidamente e com menos sobrecarga do que as VMs.<br><br>Os cont\u00eaineres Docker s\u00e3o baseados em imagens, que s\u00e3o modelos pr\u00e9-constru\u00eddos que cont\u00eam tudo o que \u00e9 necess\u00e1rio para executar uma aplica\u00e7\u00e3o. As imagens incluem o c\u00f3digo da aplica\u00e7\u00e3o, bibliotecas e quaisquer outras depend\u00eancias necess\u00e1rias para executar a aplica\u00e7\u00e3o. Voc\u00ea pode pensar nas imagens como os blocos de constru\u00e7\u00e3o dos cont\u00eaineres Docker.<\/p>\n\n\n\n<h3 class=\"gb-headline gb-headline-c0729070 gb-headline-text\">Alguns conceitos adicionais:<\/h3>\n\n\n\n<p><strong>Registro Docker:<\/strong> Um registro Docker \u00e9 um reposit\u00f3rio central onde as imagens Docker s\u00e3o armazenadas e distribu\u00eddas. O registro mais comumente usado \u00e9 o Docker Hub, que \u00e9 um registro p\u00fablico que hospeda milh\u00f5es de imagens pr\u00e9-constru\u00eddas. Voc\u00ea tamb\u00e9m pode configurar seu pr\u00f3prio registro privado para armazenar e compartilhar imagens dentro de sua organiza\u00e7\u00e3o.<br><br><strong>Dockerfile:<\/strong> Um Dockerfile \u00e9 um arquivo de texto que cont\u00e9m um conjunto de instru\u00e7\u00f5es para construir uma imagem Docker. Cada instru\u00e7\u00e3o no Dockerfile cria uma nova camada na imagem. Usando um Dockerfile, voc\u00ea pode automatizar o processo de constru\u00e7\u00e3o e configura\u00e7\u00e3o de suas imagens, facilitando a reprodu\u00e7\u00e3o e o compartilhamento delas.<br><br><strong>Volume: <\/strong>Um volume Docker \u00e9 uma maneira de armazenar e gerenciar dados em um cont\u00eainer. Os volumes s\u00e3o criados e gerenciados fora do cont\u00eainer e podem ser compartilhados entre cont\u00eaineres. Os volumes s\u00e3o frequentemente usados para persistir dados entre reinicializa\u00e7\u00f5es de cont\u00eaineres e para compartilhar dados entre cont\u00eaineres.<br><br><strong>Rede:<\/strong> O Docker fornece um sistema de rede poderoso que permite que os cont\u00eaineres se comuniquem entre si, bem como com o sistema host e outras redes externas. Por padr\u00e3o, cada cont\u00eainer \u00e9 conectado a uma rede virtual, que fornece isolamento e seguran\u00e7a.<br><br><strong>Docker Compose:<\/strong> Docker Compose \u00e9 uma ferramenta para definir e executar aplica\u00e7\u00f5es Docker de m\u00faltiplos cont\u00eaineres. Com o Docker Compose, voc\u00ea pode definir os servi\u00e7os, redes e volumes para sua aplica\u00e7\u00e3o em um \u00fanico arquivo YAML e, em seguida, usar um \u00fanico comando para iniciar e parar toda a aplica\u00e7\u00e3o. Isso facilita o gerenciamento de aplica\u00e7\u00f5es complexas que consistem em m\u00faltiplos cont\u00eaineres.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Como iniciar cont\u00eaineres Docker?<\/h2>\n\n\n\n<p>Para iniciar um cont\u00eainer Docker, voc\u00ea precisa seguir estes passos b\u00e1sicos:<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Instalar Docker<\/h4>\n\n\n\n<p>O primeiro passo \u00e9 instalar o Docker no seu sistema. O Docker est\u00e1 dispon\u00edvel para Windows, macOS e Linux. Voc\u00ea pode baixar a vers\u00e3o apropriada para o seu sistema no site do Docker.<br><br>Para instalar o Docker no Ubuntu, voc\u00ea pode seguir estas etapas:<br><br>Atualize o \u00edndice de pacotes apt e instale pacotes para permitir que o apt use um reposit\u00f3rio via HTTPS:<\/p>\n\n\n\n<pre class=\"wp-block-code language-docker line-numbers\"><code>sudo apt-get update\nsudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common<\/code><\/pre>\n\n\n\n<p>Adicione a chave GPG oficial do Docker:<\/p>\n\n\n\n<pre class=\"wp-block-code language-docker line-numbers\"><code>curl -fsSL https:\/\/download.docker.com\/linux\/ubuntu\/gpg | sudo apt-key add -<\/code><\/pre>\n\n\n\n<p>Use o seguinte comando para configurar o reposit\u00f3rio est\u00e1vel do Docker:<\/p>\n\n\n\n<pre class=\"wp-block-code language-docker line-numbers\"><code>sudo add-apt-repository \"deb &#91;arch=amd64] https:\/\/download.docker.com\/linux\/ubuntu $(lsb_release -cs) stable\"<\/code><\/pre>\n\n\n\n<p>Atualize o \u00edndice de pacotes apt e instale a vers\u00e3o mais recente do Docker CE e containerd:<\/p>\n\n\n\n<pre class=\"wp-block-code language-docker line-numbers\"><code>sudo apt-get update\nsudo apt-get install docker-ce docker-ce-cli containerd.io<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Instale docker-compose<\/h4>\n\n\n\n<p>Docker Compose \u00e9 uma ferramenta que permite definir e executar aplica\u00e7\u00f5es Docker de m\u00faltiplos cont\u00eaineres. Voc\u00ea pode instalar o Docker Compose no Ubuntu seguindo estes passos:<br><br>Baixe a vers\u00e3o est\u00e1vel atual do Docker Compose:<\/p>\n\n\n\n<pre class=\"wp-block-code language-docker line-numbers\"><code>sudo curl -L \"https:\/\/github.com\/docker\/compose\/releases\/download\/1.29.2\/docker-compose-$(uname -s)-$(uname -m)\" -o \/usr\/local\/bin\/docker-compose<\/code><\/pre>\n\n\n\n<p>Aplique permiss\u00f5es execut\u00e1veis ao bin\u00e1rio:<\/p>\n\n\n\n<pre class=\"wp-block-code language-docker line-numbers\"><code>sudo chmod +x \/usr\/local\/bin\/docker-compose<\/code><\/pre>\n\n\n\n<p>Verifique se a instala\u00e7\u00e3o foi bem-sucedida verificando a vers\u00e3o<\/p>\n\n\n\n<pre class=\"wp-block-code language-docker line-numbers\"><code>docker-compose --version<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Defina um servi\u00e7o no arquivo Docker Compose<\/h4>\n\n\n\n<p>Para come\u00e7ar, vamos criar um arquivo docker-compose.yml. Por exemplo, podemos definir um servi\u00e7o para o cont\u00eainer Nginx nele, usando a imagem oficial do Nginx do Docker Hub. Precisamos especificar o ponto de montagem para os arquivos do servidor web, que estar\u00e3o localizados no diret\u00f3rio \/var\/www\/html.<\/p>\n\n\n\n<pre class=\"wp-block-code language-docker line-numbers\"><code>version: '3'\n\nservices:\n\n  web:\n    image: nginx\n    volumes:\n      - .\/webserver-files:\/var\/www\/html\n    ports:\n      - \"80:80\"<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Construa ou puxe a imagem<\/h4>\n\n\n\n<p>Como estamos usando a imagem oficial do Nginx do Docker Hub, n\u00e3o precisamos construir a imagem. Podemos simplesmente pux\u00e1-la executando o seguinte comando:<\/p>\n\n\n\n<pre class=\"wp-block-code language-docker line-numbers\"><code>docker-compose pull<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Inicie o cont\u00eainer<\/h4>\n\n\n\n<p>Inicie o cont\u00eainer Nginx executando o seguinte comando:<\/p>\n\n\n\n<pre class=\"wp-block-code language-docker line-numbers\"><code>docker-compose up -d<\/code><\/pre>\n\n\n\n<p>Uma vez que o cont\u00eainer esteja em execu\u00e7\u00e3o, voc\u00ea pode se conectar ao servidor web abrindo um navegador e navegando para http:\/\/localhost. Voc\u00ea deve ver a p\u00e1gina padr\u00e3o do Nginx. Qualquer arquivo colocado no diret\u00f3rio .\/webserver-files no seu computador local ser\u00e1 servido pelo servidor web, j\u00e1 que ele est\u00e1 montado como o diret\u00f3rio raiz do servidor web.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclus\u00e3o<\/h2>\n\n\n\n<p>Os cont\u00eaineres Docker s\u00e3o uma ferramenta poderosa para construir, implantar e executar aplica\u00e7\u00f5es de forma port\u00e1til e eficiente. Com o Docker, voc\u00ea pode empacotar suas aplica\u00e7\u00f5es e suas depend\u00eancias em cont\u00eaineres leves e port\u00e1teis que podem ser executados em qualquer lugar. Seguindo os passos b\u00e1sicos descritos neste artigo, voc\u00ea pode come\u00e7ar a usar cont\u00eaineres Docker hoje e aproveitar seus muitos benef\u00edcios.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Sed porttitor lectus nibh. Vestibulum ac diam sit amet quam vehicula elementum sed sit amet dui. Proin eget tortor risus. Mauris blandit aliquet elit, eget tincidunt nibh pulvinar a. Sed porttitor lectus nibh.<\/p>\n","protected":false},"author":2,"featured_media":3137,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[],"tags":[],"class_list":["post-3670","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","generate-columns","tablet-grid-50","mobile-grid-100","grid-parent","grid-33"],"acf":[],"custom_fields":{"_pingme":["1"],"_encloseme":["1"],"rank_math_internal_links_processed":["1","1"],"rank_math_analytic_object_id":["130"],"rank_math_seo_score":["12"],"rank_math_primary_category":["51"],"rank_math_focus_keyword":["Docker Containers Start"],"_dp_original":["414"],"rank_math_pillar_content":["on"],"rank_math_description":["Docker Containers Start: Docker containers are lightweight, portable, and self-contained environments that allow you to package and run applications with all their dependencies."],"_generateblocks_dynamic_css_version":["1.9.1"],"_wpml_word_count":["{\"total\":990,\"to_translate\":{\"pt-br\":990,\"es\":990}}"],"_thumbnail_id":["3137"],"_edit_lock":["1723038495:4"],"_last_translation_edit_mode":["native-editor"],"_edit_last":["4"],"_wpml_media_duplicate":["1"],"_wpml_media_featured":["1"]},"_links":{"self":[{"href":"https:\/\/www.gauchocode.com\/pt-br\/wp-json\/wp\/v2\/posts\/3670","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.gauchocode.com\/pt-br\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.gauchocode.com\/pt-br\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.gauchocode.com\/pt-br\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.gauchocode.com\/pt-br\/wp-json\/wp\/v2\/comments?post=3670"}],"version-history":[{"count":0,"href":"https:\/\/www.gauchocode.com\/pt-br\/wp-json\/wp\/v2\/posts\/3670\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.gauchocode.com\/pt-br\/wp-json\/wp\/v2\/media\/3137"}],"wp:attachment":[{"href":"https:\/\/www.gauchocode.com\/pt-br\/wp-json\/wp\/v2\/media?parent=3670"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.gauchocode.com\/pt-br\/wp-json\/wp\/v2\/categories?post=3670"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.gauchocode.com\/pt-br\/wp-json\/wp\/v2\/tags?post=3670"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}