Links de contêiner do Docker
O principal uso do link do Docker é permitir a vinculação de contêineres. Antes da versão 1.9, essa era a única forma de conexão dos containers. Os links do Docker não devem permanecer no futuro e as pessoas geralmente evitam isso para novos designs. No entanto, como um novato, você deve ter alguma ideia sobre a vinculação se tiver que lidar com um código legado.
Exemplo de link do Docker
No parágrafo seguinte, estaremos criando dois containers que funcionariam como um servidor Redis e um cliente Redis, respectivamente. Vamos inserir dados e informações no servidor Redis usando o cliente Redis. O primeiro comando a seguir iniciará um servidor Redis chamado redis_server.
$docker run-d --nomeredis_server redis
$sudodockerps
O próximo comando a seguir será usado para iniciar o cliente Redis chamado redis_client.
$sudodocker run-isto --rm --nomeredis_client--ligaçãoredis_server: redisDB redisbashA opção de 'link é usada aqui para vincular o redis_server enquanto fornece as informações para redisDB. Depois de digitar um comando, um prompt de comando será aberto na sua frente, como o seguinte:
raiz@e2364251d31d:/dados#
Os próximos comandos que você digitar serão usados para instalar o ping.
$apt-get update$apt-get upgrade
$apt-get installiputils-ping
Você receberá uma resposta após inserir o comando e executar o ping no servidor Redis.
$pingredisDB
Agora adicionaríamos o comando para conectar ao servidor Redis.
$sudodockerexec -istoredis_clientsh$ redis-cli –h redisDB
redisDB:6379>
Este novo comando DB: 6379 significa que estamos conectados ao servidor Redis. Agora você pode adicionar informações ao servidor. Um exemplo é dado abaixo.
$ redisDB:6379>definirlivro'O príncipe Feliz'$ redisDB:6379>definirautor'Mark Twain'
$ redisDB:6379>pegar livro
$ redisDB:6379>obter autor
Rede Docker
O docker instalou o recurso de rede em sua versão 1.9. A nova versão cria três redes automaticamente após inserirmos o seguinte comando.
$sudorede dockerls
Nenhum, ponte e host são as redes que passam a existir em todo esse processo. Deixe-os discutir abaixo:
Ponte: a rede de ponte representa Docker0. Docker0 é uma ponte Ethernet virtual cuja tarefa é encaminhar pacotes para outras interfaces de rede conectadas a ela. Além disso, o cliente pode construir suas próprias pontes.
Hospedeiro: A principal tarefa da rede host é adicionar contêineres à pilha da rede host. Depois de definir uma rede de host, a separação e a diferença entre o host e o contêiner acabam.
Observação: A principal tarefa da rede nenhuma é desligar a rede. Alguns aplicativos funcionam sem nenhuma rede e não precisam de nenhuma rede por nenhum motivo.
Exemplo de rede com base em rede de ponte definida pelo usuário
Esta seção ajudará a testar o Docker usando o servidor Redis. Primeiramente estaremos criando uma rede chamada rede interna com o comando.
$sudocriação de rede docker-dbridge internal_network
Após sua pesquisa na rede, você configura que uma sub-rede e um gateway foram criados.
$sudodocker network inspect internal_network[
{
'Nome':'Rede interna',
'Identificação':'9bc2213d3a39d46765fe50ef8e9b7819df8e7124b0a46552447cbda84e31b049',
'Criada':'2017-11-02T08: 01: 05.119528611Z',
'Alcance':'local',
'Motorista':'Ponte',
'EnableIPv6':falso,
'IPAM':{
'Motorista':'predefinição',
'Opções':{},
'Config':[
{
'Subnet':'172.18.0.0/16',
'Porta de entrada':'172.18.0.1'
}
]
},
'Interno':falso,
'Attachable':falso,
'Entrada':falso,
'ConfigFrom':{
'Rede':''
},
'ConfigOnly':falso,
'Containers':{},
'Opções':{},
'Etiquetas':{}
}
]
Você também pode listar a rede de ponte que foi criada antes.
$sudorede dockerls
Agora, vamos executar o comando para anexar a ponte da rede interna ao redis_server.
$sudodocker run-d --rede= internal_network--nome= redis_server redis
E agora anexe o cliente:
$sudodocker run-d --rede= internal_network--nome= redis_client redisbash
Depois de investigar a rede interna, você perceberá que os dois contêineres foram incluídos na rede da ponte.
$sudodocker network inspect internal_network
Agora, vindo de seu redis_client, você seria capaz de executar ping no anúncio redis_server mais tarde se conectar a ele.
Conclusão:
Neste artigo, mostrei como configurar e trabalhar com links de contêiner do docker. Docker é uma tecnologia de contêiner muito fácil de usar, usada para aplicativos individuais. Muitas pessoas o usam em todo o mundo e um dos motivos de sua popularidade é sua facilidade de uso.