Android

Como instalar e usar o docker no centos 7

Como instalar e configurar o Docker 1.12 no Centos 7

Como instalar e configurar o Docker 1.12 no Centos 7

Índice:

Anonim

O Docker é uma tecnologia de contêiner que permite criar, testar e implantar rapidamente aplicativos como contêineres portáteis e auto-suficientes que podem ser executados praticamente em qualquer lugar.

Neste tutorial, mostraremos como instalar o Docker CE no CentOS 7 e explorar os conceitos e comandos básicos do Docker.

Pré-requisitos

Antes de continuar com este tutorial, verifique se os seguintes pré-requisitos foram atendidos:

  • Servidor CentOS 7 Você está logado como usuário não root com privilégios de sudo. Você confere este guia sobre como criar um novo usuário sudo.

Instale o Docker no CentOS

Embora o pacote Docker esteja disponível no repositório oficial do CentOS 7, nem sempre é a versão mais recente. A abordagem recomendada é instalar o Docker a partir dos repositórios do Docker.

Para instalar o Docker no servidor CentOS 7, siga as etapas abaixo:

  1. Comece atualizando os pacotes do sistema e instale as dependências necessárias:

    sudo yum update sudo yum install yum-utils device-mapper-persistent-data lvm2

    Em seguida, execute o seguinte comando que adicionará o repositório estável do Docker ao seu sistema:

    sudo yum-config-manager --add-repo

    Agora que o repositório do Docker está ativado, instale a versão mais recente do Docker CE (Community Edition) usando o yum digitando:

    sudo yum install docker-ce

    Depois que o pacote do Docker estiver instalado, inicie o daemon do Docker e permita que ele inicie automaticamente no momento da inicialização:

    sudo systemctl start docker sudo systemctl enable docker

    Para verificar se o serviço Docker está em execução, digite:

    sudo systemctl status docker

    A saída deve ser algo como isto:

    ● docker.service - Docker Application Container Engine Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled) Active: active (running) since Wed 2018-10-31 08:51:20 UTC; 7s ago Docs: https://docs.docker.com Main PID: 2492 (dockerd) CGroup: /system.slice/docker.service ├─2492 /usr/bin/dockerd └─2498 docker-containerd --config /var/run/docker/containerd/containerd.toml

    No momento da redação deste artigo, a versão estável atual do Docker é 18.06.1 , para imprimir o tipo de versão do Docker:

    docker -v

    Docker version 18.06.1-ce, build e68fc7a

Executando o comando Docker sem Sudo

Por gerenciamento padrão, o Docker requer privilégios de administrador. Se você deseja executar comandos do Docker como um usuário não raiz sem preceder o sudo precisará adicionar seu usuário ao grupo de janelas de encaixe criado durante a instalação do pacote do Docker CE. Você pode fazer isso digitando:

sudo usermod -aG docker $USER

$USER é uma variável de ambiente que contém seu nome de usuário.

Faça logoff e logon novamente para que a associação ao grupo seja atualizada.

Para verificar se o Docker foi instalado com sucesso e se você pode executar comandos do docker sem o sudo, emita o seguinte comando que fará o download de uma imagem de teste, execute-a em um contêiner, imprima uma mensagem "Hello from Docker" e saia:

docker container run hello-world

A saída deve ter a seguinte aparência:

Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 9bb5a5d4561a: Pull complete Digest: sha256:f5233545e43561214ca4891fd1157e1c3c563316ed8e237750d59bde73361e77 Status: Downloaded newer image for hello-world:latest Hello from Docker! This message shows that your installation appears to be working correctly.

Interface da linha de comandos do Docker

Agora que temos uma instalação funcional do Docker, vamos examinar a sintaxe básica da CLI do docker.

A linha de comando do docker assume o seguinte formato:

docker

Você pode listar todos os comandos disponíveis digitando docker sem parâmetros:

docker

docker --help

Imagens do Docker

Uma imagem do Docker é composta de uma série de camadas que representam instruções no Dockerfile da imagem que compõem um aplicativo de software executável. Uma imagem é um arquivo binário imutável, incluindo o aplicativo e todas as outras dependências, como binários, bibliotecas e instruções necessárias para executar o aplicativo. Em resumo, uma imagem do Docker é essencialmente uma captura instantânea de um contêiner do Docker.

O Docker Hub é um serviço de registro baseado em nuvem que, entre outras funcionalidades, é usado para manter as imagens do Docker em um repositório público ou privado.

Para pesquisar uma imagem no repositório do Docker Hub, use o subcomando search . Por exemplo, para procurar a imagem do CentOS, execute:

docker search centos

A saída deve ter a seguinte aparência:

NAME DESCRIPTION STARS OFFICIAL AUTOMATED centos The official build of CentOS. 4257 ansible/centos7-ansible Ansible on Centos7 109 jdeathe/centos-ssh CentOS-6 6.9 x86_64 / CentOS-7 7.4.1708 x86_… 94 consol/centos-xfce-vnc Centos container with "headless" VNC session… 52 imagine10255/centos6-lnmp-php56 centos6-lnmp-php56 40 tutum/centos Simple CentOS docker image with SSH access 39

Como você pode ver, os resultados da pesquisa imprimem uma tabela com cinco colunas, NAME , DESCRIPTION , STARS , OFFICIAL e AUTOMATED . A imagem oficial é uma imagem que o Docker desenvolve em conjunto com os parceiros upstream.

Se quisermos fazer o download da versão oficial do CentOS 7, podemos fazer isso usando o subcomando image pull :

docker image pull centos

Using default tag: latest latest: Pulling from library/centos 469cfcc7a4b3: Pull complete Digest: sha256:989b936d56b1ace20ddf855a301741e52abca38286382cba7f44443210e96d16 Status: Downloaded newer image for centos:latest

Dependendo da velocidade da Internet, o download pode demorar alguns segundos ou alguns minutos. Depois que a imagem é baixada, podemos listar as imagens com:

docker image ls

A saída deve ser algo como o seguinte:

REPOSITORY TAG IMAGE ID CREATED SIZE hello-world latest e38bc07ac18e 3 weeks ago 1.85kB centos latest e934aafc2206 4 weeks ago 199MB

Se, por algum motivo, você quiser excluir uma imagem, poderá fazê-lo com o subcomando image rm :

docker image rm centos

Untagged: centos:latest Untagged: centos@sha256:989b936d56b1ace20ddf855a301741e52abca38286382cba7f44443210e96d16 Deleted: sha256:e934aafc22064b7322c0250f1e32e5ce93b2d19b356f4537f5864bd102e8531f Deleted: sha256:43e653f84b79ba52711b0f726ff5a7fd1162ae9df4be76ca1de8370b8bbf9bb0

Docker Containers

Uma instância de uma imagem é chamada de contêiner. Um contêiner representa um tempo de execução para um único aplicativo, processo ou serviço.

Pode não ser a comparação mais apropriada, mas se você é um programador, pode pensar em uma imagem do Docker como classe e em um contêiner do Docker como uma instância de uma classe.

Podemos iniciar, parar, remover e gerenciar um contêiner com o subcomando de docker container do docker container .

O comando a seguir iniciará um contêiner do Docker com base na imagem do CentoOS. Se você não tiver a imagem localmente, ela fará o download primeiro:

docker container run centos

À primeira vista, pode parecer que nada aconteceu. bem, isso não é verdade. O contêiner do CentOS para imediatamente após a inicialização porque não possui um processo demorado e não fornecemos nenhum comando; portanto, o contêiner inicializou, executou um comando vazio e saiu.

A opção -it nos permite interagir com o contêiner via linha de comando. Para iniciar um tipo de contêiner interativo:

docker container run -it centos /bin/bash

Como você pode ver na saída, uma vez iniciado o contêiner, o prompt de comando é alterado, o que significa que agora você está trabalhando de dentro do contêiner:

#

Para listar contêineres em execução:, digite:

docker container ls

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 79ab8e16d567 centos "/bin/bash" 22 minutes ago Up 22 minutes ecstatic_ardinghelli Se você não tiver nenhum contêiner em execução, a saída estará vazia.

Para visualizar os contêineres em execução e parados, passe-o na opção -a :

docker container ls -a

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 79ab8e16d567 centos "/bin/bash" 22 minutes ago Up 22 minutes ecstatic_ardinghelli c55680af670c centos "/bin/bash" 30 minutes ago Exited (0) 30 minutes ago modest_hawking c6a147d1bc8a hello-world "/hello" 20 hours ago Exited (0) 20 hours ago sleepy_shannon

Para excluir um ou mais contêineres, copie o ID (ou IDs) do container rm acima e cole-o após o subcomando container rm do container rm :

docker container rm c55680af670c

Conclusão

Você aprendeu como instalar o Docker em sua máquina CentOS 7 e como baixar imagens do Docker e gerenciar contêineres do Docker. Você também pode ler sobre o Docker Compose, que permite definir e executar aplicativos Docker com vários contêineres.

Este tutorial apenas arranha a superfície do ecossistema do Docker. Em alguns de nossos próximos artigos, continuaremos analisando outros aspectos do Docker. Para saber mais sobre o Docker, consulte a documentação oficial do Docker.

docker centos