Yanıtlar:
Sadece bir bağlantı noktasını ortaya çıkarmak için yapmanız gereken budur:
docker run -p <host_port>:<container_port>
Birden çok bağlantı noktasını göstermek için birden çok -pbağımsız değişken sağlamanız yeterlidir :
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?
publishdeğil expose.
İçinde Dockerfile, fiili EXPOSEbirden fazla bağlantı noktasını ortaya çıkarmak için kullanabilirsiniz .
Örneğin
EXPOSE 3000 80 443 22
Daha sonra yukarıdakilere dayanarak yeni bir görüntü oluşturmak istersiniz Dockerfile.
Örneğin
docker build -t foo:tag .
Sonra kullanabilirsiniz -pyukarıda tanımlandığı gibi, konteyner limanı ile ev sahibi portu eşleştirmek için EXPOSEbir Dockerfile.
Örneğin
docker run -p 3001:3000 -p 23:22
Bir dizi sürekli bağlantı noktasını göstermek isterseniz, docker'ı şu şekilde çalıştırabilirsiniz:
docker run -it -p 7100-7120:7100-7120/tcp
Eğer kullanırsanız docker-compose.ymldosyayı:
services:
varnish:
ports:
- 80
- 6081
Ana bilgisayar / ağ bağlantı noktasını da belirtebilirsiniz
varnish:
ports:
- 80:80
- 6081:6081
Bir görüntüden kapsayıcı oluşturuyorsanız ve birden çok bağlantı noktasını açığa çıkarmak (yayınlamak istemiyorsanız) aşağıdaki komutu kullanabilirsiniz:
docker create --name
container name--expose 7000 --expose 7001image name
Şimdi, bu kapsayıcıyı docker startkomutu kullanarak başlattığınızda , yukarıdaki yapılandırılmış bağlantı noktaları görünecektir.