Как я могу открыть более 1 порта с помощью Docker?



поэтому у меня есть 3 порта, которые должны быть открыты для интерфейса машины. Можно ли это сделать с помощью контейнера Docker?

949   3  

3 ответов:

выставить только один порт, это то, что вам нужно сделать:

docker run -p <host_port>:<container_port>

чтобы открыть несколько портов, просто предоставьте несколько -p аргументы:

docker run -p <host_port1>:<container_port1> -p <host_port2>:<container_port2>

Step1

в своем Dockerfile, вы можете использовать глагол EXPOSE чтобы открыть несколько портов.
например,

EXPOSE 3000 80 443 22

Step2

вы тогда хотели построить новое изображение на основе выше Dockerfile.
например,

docker build -t foo:tag .

Step3

затем вы можете использовать -p чтобы сопоставить порт хоста с портом контейнера, как определено выше EXPOSE на Dockerfile.
например,

docker run -p 3001:3000 -p 23:22

в случае, если вы хотите выставьте диапазон непрерывных портов, вы можете запустить docker следующим образом:

docker run -it -p 7100-7120:7100-7120/tcp 

Если вы используете docker-compose.yml file:

services:
    varnish:
        ports:
            - 80
            - 6081

вы также можете указать хост / сетевой порт

varnish:
    ports:
        - 80:80
        - 6081:6081

Comments

    Ничего не найдено.