Agregar un nombre de host a un servicio en Docker-Compose

Agregar un nombre de host a un servicio en Docker-Compose

Cada contenedor de servicio en Docker se une a la red predeterminada. Es accesible para otros contenedores en esa red y lo pueden descubrir en un nombre de host idéntico al nombre del contenedor.

Este artículo discutirá la adición de nombres de host a nuestro servicio de contenedor en docker-compose.

Agregar un nombre de host a un servicio en Docker-Compose

Como docker-compose versión 3.0, podemos usar la clave hostname y agregarla a nuestro archivo YAML. Asegúrese de haber definido claramente la versión de lo que utiliza docker-compose al ejecutar nuestros servicios.

Para determinar la versión, utilice la tecla versión con el valor de 3 o 3.0.

version: "3.0"
services:
    sampleservice:
        hostname: service-hostname

Sin la clave versión, docker-compose utilizará el valor predeterminado de la versión 1 al ejecutar el servicio. Con la versión 1, no configuraremos correctamente nuestro nombre de host.

Sin embargo, existe un problema conocido en el que el nombre de host no será visible para otros contenedores si ejecutamos el comando docker run. En su lugar, podemos definir un alias y asignar un nombre al contenedor como solución alternativa.

Para definir un alias, habilite primero los alias definidos ejecutando el siguiente comando.

docker-compose run --use-aliases

Después de ejecutar, podemos usar la clave alias e incluirla en nuestro archivo YAML.

version: "3.0"
services:
    sampleservice:
        networks:
            samplenetwork:
                aliases:
                    - alias1
                    - alias2

Después de lo cual, asigne manualmente el alias al servicio con el siguiente comando.

docker-compose run --name alias1 sampleservice
Marion Paul Kenneth Mendoza avatar Marion Paul Kenneth Mendoza avatar

Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.

LinkedIn

Artículo relacionado - Docker Compose