Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Este tutorial é o início de uma série de quatro partes que apresenta Docker para uso com o Visual Studio Code (VS Code). Você aprenderá a criar e executar contêineres do Docker, persistir dadose gerenciar vários contêineres com o Docker Compose.
O VS Code oferece uma extensão Container Tools que permite trabalhar com um serviço Docker Desktop local. O Docker Desktop é executado em seu computador e gerencia seus contêineres locais, que são ambientes virtualizados compactos que fornecem uma plataforma para criar e executar aplicativos. Os contêineres não exigem o tamanho e a sobrecarga de um sistema operacional completo.
Neste primeiro tutorial, você aprenderá a:
- Crie um contêiner do Docker.
- Crie uma imagem de contêiner.
- Inicie um contêiner de aplicativo.
Pré-requisitos
- Visual Studio Code instalado.
- Container Tools VS Code Extension instalado.
- Docker Desktop configurado para usar contêineres Linux.
- Uma conta Docker Hub. Você pode criar uma conta gratuitamente.
O tutorial funciona com o Windows 10 ou posterior e o Docker Desktop configurado para usar contêineres Linux.
Criar um contêiner
Um contêiner é um processo no seu computador. Ele é isolado de todos os outros processos no computador host. Esse isolamento usa namespaces do kernel e grupos de controle.
Um contêiner usa um sistema de arquivos isolado. Esse sistema de arquivos personalizado é fornecido por uma imagem de contêiner . A imagem contém tudo o que é necessário para executar um aplicativo, como todas as dependências, configurações, scripts e binários. A imagem também contém outras configurações para o contêiner, como variáveis de ambiente, um comando padrão a ser executado e outros metadados.
Depois de instalar a extensão Container Tools para VS Code, você pode trabalhar com contêineres no VS Code. Além dos menus de contexto no Container Explorer, você pode selecionar Terminal>New Terminal para abrir uma janela de linha de comando. Você também pode executar comandos em uma janela Bash. A menos que especificado, qualquer comando rotulado como Bash pode ser executado em uma janela Bash ou no terminal VS Code.
Defina o Docker para o modo de contêiner Linux. Para alternar para contêineres Linux se você estiver definido para contêineres do Windows, clique com o botão direito do mouse no ícone do Docker na bandeja do sistema enquanto o Docker Desktop estiver em execução e escolha Alternar para contêineres Linux.
Em VS Code, selecione Terminal>Novo Terminal.
Na janela do terminal ou numa janela Bash, execute este comando.
docker run -d -p 80:80 docker/getting-started
Este comando contém os seguintes parâmetros:
-
-d
Execute o contêiner no modo separado, em segundo plano. -
-p 80:80
Mapeie a porta 80 do host para a porta 80 no contêiner. -
docker/getting-started
Especifica a imagem a ser usada.
Dica
Você pode combinar sinalizadores de caractere único para encurtar o comando completo. Como exemplo, o comando acima pode ser escrito como:
docker run -dp 80:80 docker/getting-started
-
No VS Code, selecione o ícone Containers à esquerda para visualizar o Container Explorer.
O Container Tools VS Code Extension mostra os contêineres em execução no seu computador. Você pode acessar logs de contêiner e gerenciar o ciclo de vida do contêiner, como parar e remover.
O nome do contêiner, modest_shockley neste exemplo, é criado aleatoriamente. O seu terá um nome diferente.
Clique com o botão direito do mouse em docker/getting-started para abrir um menu de contexto. Selecione Abrirno navegador.
Em vez disso, abra um navegador e digite
http://localhost/tutorial/
.Você verá uma página, hospedada localmente, sobre o DockerLabs.
Clique com o botão direito do mouse em docker/getting-started para abrir um menu de contexto. Selecione Remover para remover este recipiente.
Para remover um contêiner usando a linha de comando, execute este comando para obter sua ID de contêiner:
docker ps
Em seguida, pare e remova o recipiente:
docker stop <container-id> docker rm <container-id>
Atualize o navegador. A página Introdução que você viu há pouco desapareceu.
Criar uma imagem de contêiner para o aplicativo
Este tutorial usa um aplicativo Todo simples.
O aplicativo permite criar itens de trabalho e marcá-los como concluídos ou excluí-los.
Para criar o aplicativo, crie um Dockerfile. Um Dockerfile é um script de instruções baseado em texto que é usado para criar uma imagem de contêiner.
Vá para o Docker Getting Started Tutorial repo e, em seguida, selecione Code>Download ZIP. Extraia o conteúdo para uma pasta local.
Em VS Code, selecione Arquivo>Abrir Pasta. Navegue até a pasta aplicativo no projeto extraído e abra essa pasta. Você deve ver um arquivo chamado package.json e duas pastas chamadas src e spec.
Crie um arquivo chamado Dockerfile na mesma pasta que o arquivo package.json com o seguinte conteúdo.
FROM node:lts-alpine RUN apk add --no-cache python3 g++ make WORKDIR /app COPY . . RUN yarn install --production CMD ["node", "/app/src/index.js"]
Observação
Certifique-se de que o arquivo não tem nenhuma extensão de arquivo como
.txt
.No explorador de ficheiros, à esquerda no VS Code, clique com o botão direito do rato no Dockerfile e, em seguida, selecione Build Image. Insira #getting-started como a marca da imagem na caixa de entrada de texto.
A etiqueta é um nome amigável para a imagem.
Para criar uma imagem de contêiner a partir da linha de comando, use o seguinte comando da pasta
app
que tem o Dockerfile.docker build -t getting-started .
Você usou o Dockerfile para criar uma nova imagem de contêiner.
Você deve ter notado que muitas "camadas" foram baixadas.
O Dockerfile começa a partir da imagem node:lts-alpine
.
A menos que essa imagem já estivesse no seu computador, essa imagem precisava ser baixada.
Depois que a imagem foi baixada, o Dockerfile copia seu aplicativo e usa yarn
para instalar as dependências do aplicativo.
O valor CMD
no Dockerfile especifica o comando padrão a ser executado ao iniciar um contêiner a partir dessa imagem.
O .
no final do comando docker build
informa que o Docker deve procurar o Dockerfile no diretório atual.
Iniciar o contêiner do aplicativo
Agora que você tem uma imagem, você pode executar o aplicativo.
Para iniciar o contêiner, use o seguinte comando.
docker run -dp 3000:3000 getting-started
O parâmetro
-d
indica que você está executando o contêiner no modo desanexado, em segundo plano. O valor-p
cria um mapeamento entre a porta host 3000 e a porta de contêiner 3000. Sem o mapeamento de portas, você não conseguiria acessar o aplicativo.Após alguns segundos, no VS Code, no Container Explorer, em CONTAINERS, clique com o botão direito do mouse em getting-started e selecione Abrir no Navegador. Em vez disso, poderás abrir o teu navegador para
http://localhost:3000
.Você deve ver o aplicativo em execução.
Adicione um ou dois itens para testar se ele funciona como esperado. Você pode marcar itens como completos e remover itens. Seu frontend está armazenando itens com sucesso no back-end.
Próximos passos
Você concluiu este tutorial e tem um gestor de lista de tarefas com alguns itens em execução. Você aprendeu a criar imagens de contêiner e executar um aplicativo em contêiner.
Guarde tudo o que fez até agora para continuar esta série de tutoriais. Em seguida, tente a parte II desta série:
Aqui estão alguns recursos que podem ser úteis para você: