{"id":15705,"date":"2019-05-17T09:54:46","date_gmt":"2019-05-17T12:54:46","guid":{"rendered":"https:\/\/blog.hostinger.io\/pt-tutoriais\/?p=15705"},"modified":"2026-03-10T13:01:33","modified_gmt":"2026-03-10T16:01:33","slug":"container-docker","status":"publish","type":"post","link":"\/pt\/tutoriais\/container-docker","title":{"rendered":"Tutorial: como iniciar container Docker em 2026"},"content":{"rendered":"<p>Se voc&ecirc; est&aacute; trabalhando em um aplicativo ou um servi&ccedil;o que funciona em v&aacute;rios sistemas operacionais, o&nbsp;<strong>Docker<\/strong>&nbsp;pode simplificar seu processo de implanta&ccedil;&atilde;o.<\/p><p>Com a cria&ccedil;&atilde;o de containers Docker, voc&ecirc; pode lan&ccedil;ar sem esfor&ccedil;o v&aacute;rias aplica&ccedil;&otilde;es ou servi&ccedil;os em sistemas como hospedagem de servidor privado virtual ou m&aacute;quinas dedicadas. O Docker tamb&eacute;m &eacute; leve, mais f&aacute;cil de implantar e oferece melhor desempenho do que m&aacute;quinas virtuais.<\/p><p>Os containers Docker possuem todas as depend&ecirc;ncias necess&aacute;rias para executar aplicativos, eliminando problemas de compatibilidade. Criar containers Docker do zero &eacute; vital para qualquer projeto de desenvolvimento que voc&ecirc; deseje implantar usando este software de c&oacute;digo aberto.<\/p><p>Este tutorial ir&aacute; guiar voc&ecirc; na cria&ccedil;&atilde;o de um container Docker, detalhando seus benef&iacute;cios no desenvolvimento de software e as melhores pr&aacute;ticas para isso.<\/p><figure class=\"wp-block-image size-large\"><a href=\"https:\/\/assets.hostinger.com\/content\/tutorials\/pdf\/Linux-Commands-Cheatsheet-BR.pdf\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" width=\"1024\" height=\"283\" src=\"https:\/\/blog.hostinger.io\/pt-tutoriais\/wp-content\/uploads\/sites\/26\/2022\/12\/Linux-cheat-sheet-BR-1024x283.png\" alt=\"\" class=\"wp-image-30351\" srcset=\"https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2022\/12\/Linux-cheat-sheet-BR.png 1024w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2022\/12\/Linux-cheat-sheet-BR-300x83.png 300w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2022\/12\/Linux-cheat-sheet-BR-150x41.png 150w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2022\/12\/Linux-cheat-sheet-BR-768x212.png 768w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2022\/12\/Linux-cheat-sheet-BR-1536x425.png 1536w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><p>\n\n\n\n\n<\/p><p><\/p><p><div class=\"protip\">\n                    <h2 class=\"featured-snippet title\">O Que &Eacute; um Container Docker?<\/h2>\n                    <p>Um container Docker &eacute; um pacote de software autossuficiente com todas as depend&ecirc;ncias necess&aacute;rias para executar um aplicativo espec&iacute;fico em diferentes sistemas operacionais. A imagem Docker dita todas as instru&ccedil;&otilde;es de configura&ccedil;&atilde;o para iniciar ou parar containers. Um novo container &eacute; criado sempre que um usu&aacute;rio executa uma imagem.<\/p>\n                <\/div>\n\n\n\n<\/p><h2 class=\"wp-block-heading\" id=\"h-por-que-usar-containers-docker\"><strong>Por Que Usar Containers Docker?<\/strong><\/h2><p>Os containers Docker representam um divisor de &aacute;guas para os desenvolvedores de hoje. Com o isolamento de containers, seus aplicativos podem rodar no mesmo sistema operacional enquanto permanecem separados de outros sistemas operacionais e containers. Este recurso garante um desempenho consistente em ambientes de desenvolvimento e prepara&ccedil;&atilde;o.<\/p><p>Para empresas, os containers Docker aumentam a velocidade de implanta&ccedil;&atilde;o e maximizam a utiliza&ccedil;&atilde;o de recursos do sistema. Em termos de recursos, a implanta&ccedil;&atilde;o de containers Docker requer significativamente menos mem&oacute;ria do que uma m&aacute;quina virtual. Al&eacute;m disso, sua natureza port&aacute;til torna poss&iacute;vel a migra&ccedil;&atilde;o e a escalabilidade de conte&uacute;dos e aplica&ccedil;&otilde;es legadas.<\/p><p>Para resumir, os containers Docker otimizam o processo de desenvolvimento, economizando tempo valioso e contribuindo para o sucesso de seus projetos de desenvolvimento.<\/p><h2 class=\"wp-block-heading\" id=\"h-como-criar-um-container-docker\"><strong>Como Criar um Container Docker<\/strong><\/h2><p>Neste tutorial, usaremos um&nbsp;<a href=\"\/pt\/tutoriais\/o-que-e-vps-como-escolher-um-servidor-vps\"><strong>servidor privado virtual<\/strong><\/a>&nbsp;(VPS) rodando o sistema operacional&nbsp;<strong>Ubuntu 22.04<\/strong>. Primeiro, certifique-se de que o Docker est&aacute; instalado no seu servidor. Se n&atilde;o estiver, siga nosso guia para&nbsp;<a href=\"\/pt\/tutoriais\/install-docker-ubuntu\"><strong>instalar o Docker no Ubuntu<\/strong><\/a>.<\/p><p>Para os clientes VPS da Hostinger, voc&ecirc; pode aproveitar nosso template&nbsp;<strong>Ubuntu 22.04 64-bit com Docker<\/strong>&nbsp;para instala&ccedil;&atilde;o autom&aacute;tica do Docker. Para usar este modelo, fa&ccedil;a login no seu painel&nbsp;<strong>VPS&nbsp;<\/strong>, depois navegue at&eacute;&nbsp;<strong>SO e Painel &rarr; Sistema Operacional<\/strong>.<\/p><p>No menu suspenso&nbsp;<strong>Aplicativos<\/strong>, escolha&nbsp;<strong>Ubuntu 22.04 64bit com Docker<\/strong>&nbsp;e clique em&nbsp;<strong>Mudar SO<\/strong>. Aguarde o processo de instala&ccedil;&atilde;o ser conclu&iacute;do.<\/p><div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"1024\" height=\"560\" src=\"https:\/\/blog.hostinger.io\/br-tutoriais\/wp-content\/uploads\/sites\/53\/2019\/01\/hpanel-vps-operatingsystem-joomla-selected-pt-1024x560.png\" alt=\"A p&aacute;gina do sistema operacional VPS no hPanel. O CMS Joomla est&aacute; selecionado\" class=\"wp-image-38160\" srcset=\"https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/01\/hpanel-vps-operatingsystem-joomla-selected-pt.png 1024w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/01\/hpanel-vps-operatingsystem-joomla-selected-pt-300x164.png 300w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/01\/hpanel-vps-operatingsystem-joomla-selected-pt-150x82.png 150w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/01\/hpanel-vps-operatingsystem-joomla-selected-pt-768x420.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div><p>Para saber mais sobre este template e como ele se destaca, leia nossa p&aacute;gina dedicada &agrave; nossa <a href=\"\/pt\/vps\/hospedagem-docker\">Hospedagem de cont&ecirc;iner Docker<\/a>.<\/p><figure class=\"wp-block-image size-large\"><a href=\"\/pt\/alojamento-vps\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" width=\"1024\" height=\"300\" src=\"https:\/\/blog.hostinger.io\/pt-tutoriais\/wp-content\/uploads\/sites\/26\/2023\/02\/BR-VPS-hosting_in-text-banner-1-1024x300.png\" alt=\"\" class=\"wp-image-32923\" srcset=\"https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2023\/02\/BR-VPS-hosting_in-text-banner-1.png 1024w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2023\/02\/BR-VPS-hosting_in-text-banner-1-300x88.png 300w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2023\/02\/BR-VPS-hosting_in-text-banner-1-150x44.png 150w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2023\/02\/BR-VPS-hosting_in-text-banner-1-768x225.png 768w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2023\/02\/BR-VPS-hosting_in-text-banner-1-1536x450.png 1536w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><p>\n<div class=\"protip\">\n                    <h4 class=\"title\">Sugest&atilde;o de Leitura<\/h4>\n                    <p>Se voc&ecirc; preferir usar a distribui&ccedil;&atilde;o CentOS, leia nosso guia de&nbsp;<a href=\"\/pt\/tutoriais\/como-instalar-docker-compose-centos-7\"><strong>instala&ccedil;&atilde;o do Docker no CentOS<\/strong><\/a>. No entanto, os comandos para criar um container Docker podem ser diferentes.<\/p>\n                <\/div>\n\n\n\n<\/p><p>Uma vez conclu&iacute;da a instala&ccedil;&atilde;o, siga estas etapas de containeriza&ccedil;&atilde;o do Docker para executar seu aplicativo dentro de um ambiente isolado.<\/p><h3 class=\"wp-block-heading\" id=\"h-1-construa-uma-imagem-docker\"><strong>1. Construa uma Imagem Docker<\/strong><\/h3><p>Uma imagem Docker &eacute; um projeto para o seu container. Ela cont&eacute;m todo o conte&uacute;do, como c&oacute;digo, bibliotecas e depend&ecirc;ncias, de que seu aplicativo precisa para funcionar.<\/p><p>Ao executar uma imagem Docker, que pode ser de propriedade privada ou compartilhada em plataformas como&nbsp;<a href=\"https:\/\/hub.docker.com\/\" target=\"_blank\" rel=\"noopener\"><strong>Docker Hub<\/strong><\/a>, ela se transforma em um container Docker.<\/p><p>Embora seja poss&iacute;vel criar uma nova imagem Docker, &eacute; mais pr&aacute;tico usar uma imagem base e desenvolver a partir dela, pois o Docker Hub oferece in&uacute;meras imagens base que est&atilde;o prontamente dispon&iacute;veis.<\/p><p>Primeiro, fa&ccedil;a login no seu VPS usando um&nbsp;<a href=\"\/pt\/tutoriais\/como-se-conectar-servidor-vps-usando-terminal-ssh\"><strong>cliente SSH como o PuTTY<\/strong><\/a>. Ent&atilde;o, use este&nbsp;<a href=\"\/pt\/tutoriais\/comandos-linux\"><strong>comando Linux<\/strong><\/a>&nbsp;para listar todas as imagens Docker em seu sistema:<\/p><pre class=\"wp-block-preformatted\">sudo docker images<\/pre><p>Para obter mais informa&ccedil;&otilde;es sobre as imagens Docker existentes, use o seguinte comando:<\/p><pre class=\"wp-block-preformatted\">sudo docker images --help<\/pre><p>Use a op&ccedil;&atilde;o&nbsp;<strong>-q<\/strong>&nbsp;atrav&eacute;s do prompt de comando para listar os IDs num&eacute;ricos das imagens dispon&iacute;veis em seu sistema:<\/p><pre class=\"wp-block-preformatted\">sudo docker images -q<\/pre><p>Para listar todas as imagens n&atilde;o pendentes que n&atilde;o est&atilde;o marcadas ou referenciadas por um novo container, use este comando:<\/p><pre class=\"wp-block-preformatted\">sudo docker images -f dangling=false<\/pre><p>Para este tutorial, vamos puxar uma imagem baseada em&nbsp;<strong>MySQL<\/strong>. Observe que voc&ecirc; pode visitar a p&aacute;gina de cada imagem para obter informa&ccedil;&otilde;es adicionais.<\/p><div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><img decoding=\"async\" width=\"1022\" height=\"213\" src=\"https:\/\/blog.hostinger.io\/br-tutoriais\/wp-content\/uploads\/sites\/53\/2019\/05\/obtendo-imagem-docker-mysql.png\" alt=\"obtendo imagem docker com mysql no docker hub\" class=\"wp-image-42205\" srcset=\"https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/obtendo-imagem-docker-mysql.png 1022w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/obtendo-imagem-docker-mysql-300x63.png 300w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/obtendo-imagem-docker-mysql-150x31.png 150w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/obtendo-imagem-docker-mysql-768x160.png 768w\" sizes=\"(max-width: 1022px) 100vw, 1022px\" \/><\/figure><\/div><p>Importe a nova imagem para o diret&oacute;rio atual executando o seguinte comando. Lembre-se de substituir&nbsp;<strong>&lt;nome da imagem ou ID da imagem&gt;<\/strong>&nbsp;pelo nome ou ID da imagem escolhida:<\/p><pre class=\"wp-block-preformatted\">docker pull &lt;nome da imagem ou id da imagem&gt;<\/pre><figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"995\" height=\"353\" src=\"https:\/\/blog.hostinger.io\/br-tutoriais\/wp-content\/uploads\/sites\/53\/2019\/05\/docker-pull.png\" alt=\"resultado do comando docker pull no terminal\" class=\"wp-image-42206\" srcset=\"https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/docker-pull.png 995w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/docker-pull-300x106.png 300w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/docker-pull-150x53.png 150w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/docker-pull-768x272.png 768w\" sizes=\"(max-width: 995px) 100vw, 995px\" \/><\/figure><p>Outra alternativa para criar uma imagem Docker &eacute; usar o&nbsp;<a href=\"https:\/\/easypanel.io\/\" target=\"_blank\" rel=\"noopener\"><strong>Easypanel<\/strong><\/a>. Esta ferramenta fornece uma interface gr&aacute;fica do usu&aacute;rio para simplificar o gerenciamento de imagens Docker, especialmente para aqueles n&atilde;o familiarizados com opera&ccedil;&otilde;es de linha de comando.<\/p><p>O EasyPanel facilita a cria&ccedil;&atilde;o de imagens Docker para aplica&ccedil;&otilde;es escritas em v&aacute;rias linguagens de programa&ccedil;&atilde;o, como Node.js, Ruby, Python, PHP, Go e Java. Ele automatiza muitos dos processos envolvidos na configura&ccedil;&atilde;o de ambientes e depend&ecirc;ncias.<\/p><p>Os&nbsp;planos de <a href=\"\/pt\/servidor-vps\"><strong>host para VPS<\/strong><\/a>&nbsp;da Hostinger oferecem um template&nbsp;<strong>Ubuntu 22.04 64bit com EasyPanel<\/strong>, que pode ser instalado atrav&eacute;s do mesmo menu&nbsp;<strong>Sistema Operacional<\/strong>&nbsp;no painel do seu Servidor VPS.<\/p><p>Voc&ecirc; pode escolher se usar&aacute; um template baseado em Docker ou recorrer&aacute; ao EasyPanel. Selecione aquele que se encaixa na sua especialidade e requisitos do projeto, seja o Docker para mais controle ou o EasyPanel para facilidade de uso.<\/p><h3 class=\"wp-block-heading\" id=\"h-2-escreva-um-dockerfile\"><strong>2. Escreva um Dockerfile<\/strong><\/h3><p>Um Dockerfile &eacute; um arquivo de texto que informa ao Docker como construir sua imagem. Ele lista todos os&nbsp;comandos Docker&nbsp;necess&aacute;rios para montar uma imagem de container. Usar um Dockerfile garante que suas imagens sejam constru&iacute;das da mesma maneira todas as vezes, tornando seu trabalho mais consistente e f&aacute;cil de gerenciar.<\/p><p>Aqui est&aacute; um exemplo de um modelo simples de Dockerfile:<\/p><pre class=\"wp-block-preformatted\">FROM ubuntu:latest<br>WORKDIR \/app<br>COPY . .<br>RUN apt-get update &amp;&amp; apt-get install -y curl<br>CMD [\"curl\", \"https:\/\/www.exemplo.com\"]<\/pre><p>Em um Dockerfile, cada comando cria uma nova camada na imagem Docker. Veja como funciona, conforme mostrado em nosso exemplo:<\/p><ul class=\"wp-block-list\">\n<li><strong>FROM ubuntu:latest<\/strong>&nbsp;&#8210; este comando puxa a imagem Ubuntu mais recente e a define como a camada base. As seguintes camadas ser&atilde;o constru&iacute;das em cima disso.<\/li>\n\n\n\n<li><strong>WORKDIR \/app<\/strong>&nbsp;&#8210; define o diret&oacute;rio de trabalho do container, criando uma nova camada que serve como contexto para os comandos subsequentes.<\/li>\n\n\n\n<li><strong>COPY . .<\/strong>&nbsp;&#8210; copia arquivos locais para a mesma pasta do container, criando uma camada adicional contendo os arquivos do seu projeto.<\/li>\n\n\n\n<li><strong>RUN apt-get update &amp;&amp; apt-get install -y curl<\/strong>&nbsp;&#8210; o comando Docker&nbsp;<strong>run <\/strong>instala o&nbsp;<a href=\"\/pt\/tutoriais\/comando-curl-linux\"><strong>cURL<\/strong><\/a>&nbsp;no container, adicionando uma nova camada para a lista de pacotes atualizada e o pacote cURL instalado.<\/li>\n\n\n\n<li><strong>CMD [&ldquo;curl&rdquo;, &ldquo;https:\/\/www.exemplo.com&rdquo;]<\/strong>&nbsp;&#8210; define o comando padr&atilde;o para executar o aplicativo quando o container iniciar.<\/li>\n<\/ul><p>Quaisquer altera&ccedil;&otilde;es que voc&ecirc; fa&ccedil;a enquanto o container est&aacute; em execu&ccedil;&atilde;o, como adicionar ou modificar arquivos, s&atilde;o escritas nas respectivas camadas grav&aacute;veis. Dessa forma, voc&ecirc; pode fazer ajustes tempor&aacute;rios sem afetar a imagem base.<\/p><p><div class=\"protip\">\n                    <h4 class=\"title\">Dica<\/h4>\n                    <p>Um Dockerfile &eacute; opcional ao usar imagens pr&eacute;-constru&iacute;das do Docker Hub. No entanto, ele &eacute; necess&aacute;rio para personalizar ou ampliar essas imagens.<\/p>\n                <\/div>\n\n\n\n<\/p><h3 class=\"wp-block-heading\" id=\"h-3-construa-o-container-docker\"><strong>3. Construa o Container Docker<\/strong><\/h3><p>Se voc&ecirc; estiver preparando um novo Dockerfile, navegue at&eacute; o mesmo diret&oacute;rio que o referido arquivo e execute o comando Docker&nbsp;<strong>build&nbsp;<\/strong>&nbsp;para iniciar um novo processo de constru&ccedil;&atilde;o de imagem. Lembre-se de substituir a op&ccedil;&atilde;o&nbsp;<strong>&lt;nome da imagem ou id da imagem&gt;&nbsp;<\/strong>com o nome da sua tag.<\/p><pre class=\"wp-block-preformatted\">docker build -t &lt;nome da imagem ou id da imagem&gt; .<\/pre><p>Inicia um novo container a partir da imagem que voc&ecirc; acabou de construir usando o comando Docker&nbsp;<strong>run&nbsp;<\/strong>ubuntu:<\/p><pre class=\"wp-block-preformatted\">docker run &lt;nome da imagem ou id da imagem&gt;<\/pre><p>Caso contr&aacute;rio, execute uma imagem pr&eacute;-constru&iacute;da importada do Docker Hub. Vamos usar a imagem MySQL que puxamos anteriormente:<\/p><pre class=\"wp-block-preformatted\">docker run mysql<\/pre><figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1022\" height=\"169\" src=\"https:\/\/blog.hostinger.io\/br-tutoriais\/wp-content\/uploads\/sites\/53\/2019\/05\/docker-run-mysql.png\" alt=\"resultado do comando docker run mysql no terminal\" class=\"wp-image-42207\" srcset=\"https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/docker-run-mysql.png 1022w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/docker-run-mysql-300x50.png 300w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/docker-run-mysql-150x25.png 150w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/docker-run-mysql-768x127.png 768w\" sizes=\"(max-width: 1022px) 100vw, 1022px\" \/><\/figure><p>O empilhamento eficiente de imagens &eacute; crucial para otimizar o tempo de constru&ccedil;&atilde;o e o uso de recursos. Cada comando em um Dockerfile cria uma nova camada, que o Docker armazena em cache. Quando voc&ecirc; reconstr&oacute;i uma imagem, o Docker reutiliza camadas inalteradas, acelerando o processo de constru&ccedil;&atilde;o.<\/p><p>Al&eacute;m disso, o empilhamento eficiente pode reduzir o tamanho da imagem, tornando-a mais r&aacute;pida para puxar, empurrar ou implantar. Essa pr&aacute;tica &eacute; particularmente vital para empresas que precisam de implanta&ccedil;&otilde;es r&aacute;pidas para permanecerem competitivas.<\/p><h3 class=\"wp-block-heading\" id=\"h-4-execute-e-gerencie-containers\"><strong>4. Execute e Gerencie containers<\/strong><\/h3><p>Uma vez que criamos a imagem do container, inicie-a usando o comando Docker&nbsp;<strong>run&nbsp;<\/strong>. Substitua&nbsp;<strong>&lt;nome do container&gt;<\/strong>pelo nome de sua escolha. Aqui,&nbsp;<strong>mysql bash<\/strong>&nbsp;representa qual container iremos executar.<\/p><pre class=\"wp-block-preformatted\">docker run --name &lt;nome do container&gt; -it mysql bash<\/pre><p>Use o comando Docker&nbsp;<strong>ps&nbsp;<\/strong>com a op&ccedil;&atilde;o&nbsp;<strong>-a<\/strong>&nbsp;para listar os containers em execu&ccedil;&atilde;o no seu sistema. Adicione&nbsp;<strong>sudo<\/strong>&nbsp;no in&iacute;cio do comando para execut&aacute;-lo com permiss&otilde;es de root.<\/p><pre class=\"wp-block-preformatted\">docker ps -a<\/pre><p>Use o seguinte comando Docker para ver o processo principal de um container:<\/p><pre class=\"wp-block-preformatted\">docker top MyContainer<\/pre><figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"920\" height=\"179\" src=\"https:\/\/blog.hostinger.io\/br-tutoriais\/wp-content\/uploads\/sites\/53\/2019\/05\/docker-top-mycontainer.png\" alt=\"resultado do comando docker top container no terminal\" class=\"wp-image-42208\" srcset=\"https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/docker-top-mycontainer.png 920w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/docker-top-mycontainer-300x58.png 300w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/docker-top-mycontainer-150x29.png 150w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/docker-top-mycontainer-768x149.png 768w\" sizes=\"(max-width: 920px) 100vw, 920px\" \/><\/figure><p>Para mapear portas entre o host e o container, use a op&ccedil;&atilde;o&nbsp;<strong>-p<\/strong>&nbsp;juntamente com o comando docker&nbsp;<strong>run&nbsp;<\/strong>:<\/p><pre class=\"wp-block-preformatted\">docker run -p porta_do_host:porta_do_container &lt;nome da imagem&gt;<\/pre><p>Mapear portas exp&otilde;e o aplicativo do seu container para o exterior, permitindo o acesso da sua m&aacute;quina host. Esse processo &eacute; vital para servidores web, bancos de dados ou qualquer aplica&ccedil;&atilde;o que se conecte com sistemas externos.<\/p><p>Para anexar um volume para armazenamento persistente, use a op&ccedil;&atilde;o&nbsp;<strong>-v<\/strong>:<\/p><pre class=\"wp-block-preformatted\">docker run -v diret&oacute;rio_do_host:diret&oacute;rio_do_container &lt;nome da imagem&gt;<\/pre><p>Anexar&nbsp;<a href=\"https:\/\/docs.docker.com\/storage\/volumes\/\" target=\"_blank\" rel=\"noopener\"><strong>volumes<\/strong><\/a>&nbsp;torna a configura&ccedil;&atilde;o do seu container mais robusta, f&aacute;cil de gerenciar e com melhor desempenho. Seus dados permanecem intactos mesmo se a configura&ccedil;&atilde;o do container Docker for interrompida, exclu&iacute;da ou atualizada. Al&eacute;m disso, os volumes podem ser compartilhados entre v&aacute;rios containers, simplificando a gest&atilde;o de dados em configura&ccedil;&otilde;es com v&aacute;rios containers. Voc&ecirc; pode usar o comando&nbsp;<strong>docker container ls<\/strong>&nbsp;para listar todos os containers dispon&iacute;veis.<\/p><p><div class=\"protip\">\n                    <h4 class=\"title\">Dica<\/h4>\n                    <p>Use comandos Docker CLI ou a API Docker para gerenciar volumes.<\/p>\n                <\/div>\n\n\n\n<\/p><p>Voc&ecirc; pode limitar recursos como CPU e mem&oacute;ria usando as op&ccedil;&otilde;es&nbsp;<strong>&ndash;cpus<\/strong>&nbsp;e&nbsp;<strong>&ndash;memory<\/strong>. O seguinte exemplo limita o container a at&eacute; 0,5 CPUs e 500 MB de RAM.<\/p><pre class=\"wp-block-preformatted\">docker run --cpus=0.5 --memory=500m &lt;nome da imagem&gt;<\/pre><p>Execyte o seguinte comando para parar o container em execu&ccedil;&atilde;o:<\/p><pre class=\"wp-block-preformatted\">docker stop MeuContainer<\/pre><p>O seguinte comando mostra as informa&ccedil;&otilde;es adicionais do container, incluindo ID do container, utiliza&ccedil;&atilde;o de CPU e uso de mem&oacute;ria:<\/p><pre class=\"wp-block-preformatted\">docker stats<\/pre><figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1007\" height=\"65\" src=\"https:\/\/blog.hostinger.io\/br-tutoriais\/wp-content\/uploads\/sites\/53\/2019\/05\/docker-stats.png\" alt=\"resultado do comando docker stats no terminal\" class=\"wp-image-42209\" srcset=\"https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/docker-stats.png 1007w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/docker-stats-300x19.png 300w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/docker-stats-150x10.png 150w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/docker-stats-768x50.png 768w\" sizes=\"(max-width: 1007px) 100vw, 1007px\" \/><\/figure><p>Para encerrar o container Docker, insira o seguinte comando na linha de comando:<\/p><pre class=\"wp-block-preformatted\">docker kill MeuContainer<\/pre><h2 class=\"wp-block-heading\" id=\"h-melhores-praticas-para-container-docker\"><strong>Melhores Pr&aacute;ticas para Container Docker<\/strong><\/h2><p>Aqui est&atilde;o algumas melhores pr&aacute;ticas para garantir um processo eficiente de containeriza&ccedil;&atilde;o Docker.<\/p><p><strong>Use o Kodee, Assistente com IA da Hostinger<\/strong><\/p><p>Efici&ecirc;ncia &eacute; um elemento vital ao criar containers Docker. Felizmente, os clientes da Hostinger podem utilizar o&nbsp;<strong><a href=\"https:\/\/www.youtube.com\/watch?v=0SQ8N8XDbTU\" target=\"_blank\" rel=\"noopener\">Kodee,<\/a><\/strong> nosso assistente de VPS com IA, para otimizar o processo. Ao fornecer guias de instala&ccedil;&atilde;o ou recomendar comandos apropriados, o Kodee simplifica suas tarefas de gerenciamento de VPS.<\/p><p>Este recurso est&aacute; acess&iacute;vel no painel esquerdo do seu painel de controle&nbsp;<strong>VPS&nbsp;<\/strong>. Voc&ecirc; pode fazer perguntas sobre o processo de containeriza&ccedil;&atilde;o do Docker, como &ldquo;como atualizar dinamicamente o container quando a imagem base muda&rdquo;.<\/p><p>O Kodee responder&aacute; com uma resposta abrangente, incluindo quaisquer comandos ou scripts relevantes.<\/p><div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"1024\" height=\"711\" src=\"https:\/\/blog.hostinger.io\/br-tutoriais\/wp-content\/uploads\/sites\/53\/2019\/05\/ia-assistente-docker-container-1024x711.png\" alt=\"assistente ia para vps no hpanel da hostinger falando sobre container docker\" class=\"wp-image-42210\" srcset=\"https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/ia-assistente-docker-container.png 1024w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/ia-assistente-docker-container-300x208.png 300w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/ia-assistente-docker-container-150x104.png 150w, https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-content\/uploads\/sites\/26\/2019\/05\/ia-assistente-docker-container-768x534.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div><p><strong>Mantenha os Containers Leves<\/strong><\/p><p>Containers menores s&atilde;o mais r&aacute;pidos, mais eficientes e mais seguros. Eles s&atilde;o implantados rapidamente, usam menos recursos e maximizam a utiliza&ccedil;&atilde;o do hardware. Com menos componentes, eles reduzem os riscos de ataques, melhorando a seguran&ccedil;a geral.<\/p><p>Siga estas dicas para criar containers leves:<\/p><ul class=\"wp-block-list\">\n<li><strong>Opte por imagens base leves<\/strong>&nbsp;&#8210; se voc&ecirc; tiver v&aacute;rias imagens semelhantes, construa uma imagem base com componentes compartilhados e crie imagens Docker personalizadas a partir dela.<\/li>\n\n\n\n<li><strong>Use constru&ccedil;&otilde;es em v&aacute;rias etapas<\/strong>&nbsp;&#8210; inclua apenas componentes essenciais como artefatos e ambiente na imagem final.<\/li>\n\n\n\n<li><strong>Remova arquivos desnecess&aacute;rios<\/strong>&nbsp;&#8210; ap&oacute;s instalar pacotes, otimize o desempenho do seu aplicativo Docker&nbsp;<a href=\"\/pt\/tutoriais\/remover-imagem-docker\"><strong>removendo imagens Docker n&atilde;o utilizadas<\/strong><\/a>, cache e arquivos tempor&aacute;rios.<\/li>\n\n\n\n<li><strong>Seja espec&iacute;fico nos comandos<\/strong>&nbsp;&#8210; consolide os comandos em uma &uacute;nica linha de&nbsp;<strong>execu&ccedil;&atilde;o<\/strong>&nbsp;para reduzir as camadas da imagem. Al&eacute;m disso, evite instalar pacotes recomendados ou sugeridos que n&atilde;o s&atilde;o essenciais.<\/li>\n<\/ul><p><strong>Use Imagens Oficiais<\/strong><\/p><p>Usar imagens oficiais do Docker Hub para a constru&ccedil;&atilde;o de imagens Docker garante uma base segura, otimizada e confi&aacute;vel para seus containers. Eles geralmente s&atilde;o adaptados para casos de uso espec&iacute;ficos, fornecendo um ponto de partida eficiente para o desenvolvimento de aplica&ccedil;&otilde;es robustas e eficientes.<\/p><p>Em termos de seguran&ccedil;a, as imagens oficiais passam por verifica&ccedil;&otilde;es de seguran&ccedil;a rigorosas e s&atilde;o prontamente corrigidas para vulnerabilidades. Como s&atilde;o amplamente utilizadas, as imagens oficiais s&atilde;o bem testadas e compat&iacute;veis com v&aacute;rias configura&ccedil;&otilde;es e plataformas.<\/p><p><strong>Limitar Permiss&otilde;es do Container<\/strong><\/p><p>Executar containers com privil&eacute;gios extras representa um risco de seguran&ccedil;a. Um hacker pode obter controle total do seu sistema se um container for violado enquanto estiver sendo executado como root.<\/p><p>Para manter a seguran&ccedil;a do sistema, conceda apenas as permiss&otilde;es necess&aacute;rias ao seu container. Crie e use um usu&aacute;rio n&atilde;o-root para executar sua aplica&ccedil;&atilde;o dentro do container. Voc&ecirc; tamb&eacute;m pode configurar seu container para o&nbsp;<strong>modo somente leitura<\/strong>&nbsp;para evitar altera&ccedil;&otilde;es indesejadas.<\/p><p><strong>Proteja Informa&ccedil;&otilde;es Sens&iacute;veis<\/strong><\/p><p>Quando o container Docker inicia, voc&ecirc; pode configurar&nbsp;<a href=\"https:\/\/docs.docker.com\/compose\/environment-variables\/\" target=\"_blank\" rel=\"noopener\"><strong>vari&aacute;veis de ambiente<\/strong><\/a>&nbsp;dependendo do aplicativo ou servi&ccedil;o que est&aacute; sendo executado dentro dele. Algumas das vari&aacute;veis mais comuns incluem credenciais de banco de dados, configura&ccedil;&otilde;es de aplicativos e valores secretos para autentica&ccedil;&atilde;o.<\/p><p>As vari&aacute;veis de ambiente mant&ecirc;m os dados sens&iacute;veis separados do seu c&oacute;digo e imagem, escondendo-os daqueles que t&ecirc;m acesso a ambos. Usar vari&aacute;veis de ambiente tamb&eacute;m torna sua configura&ccedil;&atilde;o mais flex&iacute;vel, pois voc&ecirc; pode facilmente alterar os dados sem modificar o Dockerfile ou reconstruir a imagem.<\/p><p><strong>Aproveite a Orquestra&ccedil;&atilde;o de containers<\/strong><\/p><p>Ferramentas de&nbsp;orquestra&ccedil;&atilde;o de containers, como&nbsp;<strong>Docker Compose<\/strong>&nbsp;e&nbsp;<strong>Kubernetes<\/strong>, simplificam o gerenciamento de aplicativos multi-containers. Eles simplificam a implanta&ccedil;&atilde;o permitindo que voc&ecirc; lance v&aacute;rios containers com um &uacute;nico comando.<\/p><p>Por exemplo, voc&ecirc; pode&nbsp;<a href=\"\/pt\/tutoriais\/como-instalar-wordpress-no-docker-windows-macos-e-linux\"><strong>usar o Docker Compose para instalar o WordPress<\/strong><\/a>&nbsp;com todos os componentes necess&aacute;rios, como um servidor web e um banco de dados.<\/p><p>Ferramentas de orquestra&ccedil;&atilde;o tamb&eacute;m lidam com a escala, ajustando automaticamente os servi&ccedil;os &agrave; medida que o tr&aacute;fego aumenta. Eles distribuem o tr&aacute;fego de rede de entrada em v&aacute;rios containers, melhorando o desempenho e a confiabilidade.<\/p><h2 class=\"wp-block-heading\" id=\"h-conclusao\"><strong>Conclus&atilde;o<\/strong><\/h2><p>O Docker &eacute; uma ferramenta inestim&aacute;vel para os desenvolvedores e empresas de hoje, oferecendo um ambiente consistente, implanta&ccedil;&otilde;es simplificadas e otimiza&ccedil;&atilde;o do uso de recursos. Saber como construir um container Docker ajuda a tornar seu ciclo de desenvolvimento mais eficiente e seguro.<\/p><p>Cobrimos as etapas para criar um container Docker a partir de uma imagem e comandos comuns para completar o processo. Voc&ecirc; tamb&eacute;m aprendeu as melhores pr&aacute;ticas para um eficiente gerenciamento de containers Docker no servidor privado virtual Ubuntu 22.04.<\/p><p>Se voc&ecirc; tiver alguma d&uacute;vida sobre a cria&ccedil;&atilde;o de containers Docker, deixe um coment&aacute;rio abaixo.<\/p><h2 class=\"wp-block-heading\" id=\"h-como-criar-um-container-docker-perguntas-frequentes\"><strong>Como Criar um Container Docker: Perguntas Frequentes<\/strong><\/h2><p>Esta se&ccedil;&atilde;o aborda perguntas frequentes sobre a cria&ccedil;&atilde;o de containers Docker.<\/p><div id=\"rank-math-faq\" class=\"rank-math-block\">\n<div class=\"rank-math-list \">\n<div id=\"faq-question-69441519d2260\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Qual a Diferenu0026ccedil;a Entre Imagem Docker e Container Docker?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Uma imagem Docker u0026eacute; um modelo para criar um container, contendo o cu0026oacute;digo do aplicativo, bibliotecas e dependu0026ecirc;ncias. Por outro lado, um container Docker u0026eacute; uma versu0026atilde;o em execuu0026ccedil;u0026atilde;o de uma imagem. Quando vocu0026ecirc; inicia um container a partir de uma imagem, o sistema cria um ambiente ao vivo onde o aplicativo pode ser executado e interagir.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-69441519d2264\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Uma Imagem Docker Pode ter Mu0026uacute;ltiplos Containers?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Sim, vocu0026ecirc; pode usar uma u0026uacute;nica imagem Docker para criar vu0026aacute;rios containers. Cada container u0026eacute; executado de forma independente e possui seu pru0026oacute;prio conjunto de recursos e configurau0026ccedil;u0026otilde;es. Essa pru0026aacute;tica permite que vocu0026ecirc; escale ou execute aplicativos em vu0026aacute;rios ambientes sem criar uma imagem Docker cada vez, economizando tempo e recursos.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-69441519d2265\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">As Imagens Docker Podem ser Editadas?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>As imagens do Docker su0026atilde;o feitas de camadas somente leitura, entu0026atilde;o vocu0026ecirc; nu0026atilde;o pode editu0026aacute;-las diretamente. Para fazer alterau0026ccedil;u0026otilde;es, atualize o Dockerfile ou os arquivos de origem e construa uma nova imagem com o comando Docker build. Como os containers existentes nu0026atilde;o seru0026atilde;o atualizados automaticamente, vocu0026ecirc; deve paru0026aacute;-los e criar novos a partir da imagem criada.<\/p>\n\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Se voc&ecirc; est&aacute; trabalhando em um aplicativo ou um servi&ccedil;o que funciona em v&aacute;rios sistemas operacionais, o&nbsp;Docker&nbsp;pode simplificar seu processo de implanta&ccedil;&atilde;o. Com a cria&ccedil;&atilde;o de containers Docker, voc&ecirc; pode lan&ccedil;ar sem esfor&ccedil;o v&aacute;rias aplica&ccedil;&otilde;es ou servi&ccedil;os em sistemas como hospedagem de servidor privado virtual ou m&aacute;quinas dedicadas. O Docker tamb&eacute;m &eacute; leve, mais f&aacute;cil [&#8230;]<\/p>\n<p><a class=\"btn btn-secondary understrap-read-more-link\" href=\"\/pt\/tutoriais\/container-docker\">Read More&#8230;<\/a><\/p>\n","protected":false},"author":125,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"rank_math_title":"Tutorial: como iniciar container Docker em %currentyear%","rank_math_description":"O uso de um Container Docker \u00e9 \u00fatil para que um c\u00f3digo rode igualmente tanto no desenvolvimento quanto na produ\u00e7\u00e3o. Veja como inici\u00e1-lo!","rank_math_focus_keyword":"container docker","footnotes":""},"categories":[4915],"tags":[6549],"class_list":["post-15705","post","type-post","status-publish","format-standard","hentry","category-vps","tag-docker-container"],"hreflangs":[{"locale":"pt-BR","link":"https:\/\/www.hostinger.com\/br\/tutoriais\/container-docker","default":0},{"locale":"pt-PT","link":"https:\/\/www.hostinger.com\/pt\/tutoriais\/container-docker","default":0}],"acf":[],"_links":{"self":[{"href":"https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-json\/wp\/v2\/posts\/15705","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-json\/wp\/v2\/users\/125"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-json\/wp\/v2\/comments?post=15705"}],"version-history":[{"count":18,"href":"https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-json\/wp\/v2\/posts\/15705\/revisions"}],"predecessor-version":[{"id":49754,"href":"https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-json\/wp\/v2\/posts\/15705\/revisions\/49754"}],"wp:attachment":[{"href":"https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-json\/wp\/v2\/media?parent=15705"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-json\/wp\/v2\/categories?post=15705"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hostinger.com\/pt\/tutoriais\/wp-json\/wp\/v2\/tags?post=15705"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}