Entonces tengo 3 puertos que deberían estar expuestos a la interfaz de la máquina. ¿Es posible hacer esto con un contenedor Docker?
docker
docker-networking
nubela
fuente
fuente
Respuestas:
Para exponer solo un puerto, esto es lo que debe hacer:
Para exponer múltiples puertos, simplemente proporcione múltiples
-p
argumentos:fuente
Note: The -p flag can be used multiple times to configure multiple ports.
--env-file
?docker run -P
(ten en cuenta las mayúsculas) que expone automáticamente todos los puertos definidos con EXPOSE en el Dockerfilepublish
no esexpose
.Paso 1
En su
Dockerfile
, puede usar el verboEXPOSE
para exponer múltiples puertos.p.ej
Paso 2
Luego le gustaría construir una nueva imagen basada en lo anterior
Dockerfile
.p.ej
Paso 3
A continuación, puede utilizar la
-p
de asignar el puerto host con el puerto de contenedores, tal como se define en el anteriorEXPOSE
deDockerfile
.p.ej
En caso de que desee exponer un rango de puertos continuos, puede ejecutar docker de esta manera:
fuente
si usa el
docker-compose.yml
archivo:También puede especificar el host / puerto de red
fuente
Si está creando un contenedor a partir de una imagen y desea exponer múltiples puertos (no publicar), puede usar el siguiente comando:
Ahora, cuando inicie este contenedor con el
docker start
comando, los puertos configurados arriba estarán expuestos.fuente