Este artículo explicará la diferencia entre los puertos y la clave de exponer en Docker Compose.
Diferencia entre Expose y Ports en Docker Compose
El "exponer" y "puertoLas claves en Docker Compose se utilizan para configurar la red y los puertos de exposición para el contenedor. Sin embargo, ambas claves se usan para el mismo propósito, pero la diferencia clave entre los "puertos" y "exponer" es que la clave de exposición es accesible para los servicios que están conectados a la misma red pero no en el host. En contraste, los puertos son accesibles y publicados en el host y en la red conectada.
Verificar la diferencia entre las claves "Exponer" y los "puertos" en Docker-Compose prácticamente
Para verificar la diferencia entre la clave de exposición y los puertos prácticamente, pase por los ejemplos enumerados:
Ejemplo 1: Utilice la tecla "Puertos" en el archivo Docker-Compose
El "puerto"La clave se utiliza para publicar el contenedor en la máquina host. Estos contenedores son accesibles para todos los servicios que también se están ejecutando en el host en una red conectada.
Para usar la tecla "Puertos" en Docker Compose, consulte las instrucciones dadas.
Paso 1: Crea un "Docker-Compose.YML "
Hacer una "compuesto de acopolador.YML"Archivo y pegue el siguiente bloque de código en el archivo:
Versión: "3"
servicios:
web:
Imagen: Nginx: Último
Puertos:
- 8080: 80
Según el fragmento anterior:
Paso 2: Iniciar contenedores
A continuación, cree y encienda el contenedor de composición con la ayuda de "Docker-compuesto" dominio:
> Docker -Compose up -d
Paso 3: Lista de componer contenedor
Enumere el contenedor y verifique el puerto de exposición del contenedor. Desde la salida, puede observar que hemos publicado el contenedor en el host:
> Docker-Compose PS
Ejemplo 2: utilizar la clave "Exponer" en el archivo Docker-compuesto
Para utilizar la clave de exposición en el "compuesto de acopolador.YML"Archivo, eche un vistazo a las instrucciones proporcionadas.
Paso 1: Crea un "Docker-Compose.YML "
Ahora, configure el "web"Servicio para exponer el puerto 80 con la ayuda del"exponer" llave. Aquí, no hemos definido ninguna red para el contenedor:
Versión: "3"
servicios:
web:
Imagen: Nginx: Último
exponer:
- 8080: 80
Paso 2: enciende el contenedor
A continuación, cree e inicie el contenedor de composición para ejecutar el servicio web utilizando el comando proporcionado:
> Docker -Compose up -d
Paso 3: Lista de componer contenedor
Enumere el contenedor de componer y verifique el puerto de exposición del contenedor. En la siguiente salida, puede observar que el contenedor es accesible solo en el puerto 80 en una red seleccionada predeterminada pero no en el host:
> Docker-Compose PS
Hemos definido la distinción de "exponer" y "puerto"Keys en Docker Compose.
Conclusión
El "exponer" y "puerto"Ambos se utilizan para especificar el puerto de exposición del contenedor para ejecutar servicios definidos. La principal diferencia entre estas dos claves es que los "puertos" se publican y se pueden acceder en la máquina host y también en la red especificada, mientras que "Exponer" solo se publica en la red definida y se accede por servicios que se ejecutan en la misma red. Este artículo demostró la distinción entre "puertos" y "exponer" en Docker Compose.