Réponses:
Pour exposer un seul port, voici ce que vous devez faire:
docker run -p <host_port>:<container_port>
Pour exposer plusieurs ports, fournissez simplement plusieurs -parguments:
docker run -p <host_port1>:<container_port1> -p <host_port2>:<container_port2>
Note: The -p flag can be used multiple times to configure multiple ports.
--env-file?
publishpas expose.
Dans votre Dockerfile, vous pouvez utiliser le verbe EXPOSEpour exposer plusieurs ports.
par exemple
EXPOSE 3000 80 443 22
Vous souhaitez ensuite créer une nouvelle image basée sur ce qui précède Dockerfile.
par exemple
docker build -t foo:tag .
Ensuite, vous pouvez utiliser -ppour mapper le port hôte avec le port conteneur, comme défini ci EXPOSE- dessus de Dockerfile.
par exemple
docker run -p 3001:3000 -p 23:22
Si vous souhaitez exposer une gamme de ports continus, vous pouvez exécuter docker comme ceci:
docker run -it -p 7100-7120:7100-7120/tcp
si vous utilisez un docker-compose.ymlfichier:
services:
varnish:
ports:
- 80
- 6081
Vous pouvez également spécifier le port hôte / réseau
varnish:
ports:
- 80:80
- 6081:6081
Si vous créez un conteneur à partir d'une image et souhaitez exposer plusieurs ports (pas publier), vous pouvez utiliser la commande suivante:
docker create --name
container name--expose 7000 --expose 7001image name
Maintenant, lorsque vous démarrez ce conteneur à l'aide de la docker startcommande, les ports configurés ci-dessus seront exposés.