Como impedir hashes de anexação do docker-compor a nomes de contêiner criados?

3

Eu tenho um servidor com vários contêineres lxc. Em alguns dos contêineres, há uma janela de encaixe instalada. Normalmente, uma ação de composição do docker nesses contêineres do LXC resulta em nomes de contêiner com o formato appname_service_1 , por exemplo. wordpress_app_1 e wordpress_db_1 , quando app e db são dois serviços que são chamados no arquivo wordpress - você sabe disso.

Mas hoje eu criei outro contêiner LXC e instalei o docker nele. A configuração é idêntica aos outros containers, graças ao ansible. No entanto, os nomes dos contêineres do Docker são diferentes, por exemplo, %código%. O hash no final difere sempre que eu excluir o contêiner e recriá-lo.

Como isso torna os contêineres não tão descartáveis como deveriam, porque ele destrói todas as rotas entre os contêineres, eu gostaria de saber por que esses hashes são anexados. Todos os contêineres LXC têm a mesma janela de encaixe e a mesma versão de composição do docker instalada. Gostaria de evitar esses hashes em meus nomes de contêiner do Docker.

Por que eles estão ocorrendo agora e não ocorreram antes?

    
por simonszu 31.10.2018 / 15:47

2 respostas

3

Esse é o novo comportamento do docker-compose e espelha o comportamento do modo swarm. Ele não afeta a capacidade de conectar os contêineres pela rede, pois há aliases DNS para o nome do serviço que estão sempre incluídos, no seu caso app e db . Não há necessidade de o nome completo do contêiner se conectar a uma réplica de um serviço usando o DNS round-robin.

Nas notas de lançamento :

Important note

The default naming scheme for containers created by Compose in this version has changed from <project>_<service>_<index> to <project>_<service>_<index>_<slug>, where <slug> is a randomly-generated hexadecimal string. Please make sure to update scripts relying on the old naming scheme accordingly before upgrading.

    
por 31.10.2018 / 19:19
0

Está corrigido na versão 1.23.2 :

Reverted a 1.23.0 change that appended random strings to container names created by docker-compose up, causing addressability issues. Note: Containers created by docker-compose run will continue to use randomly generated names to avoid collisions during parallel runs.

    
por 04.12.2018 / 16:59