Я пытаюсь привязать нужный IP-адрес и порт к контейнеру докеров и открыть его в сети, чтобы к нему можно было получить доступ через другие машины в сети, независимо от того, на какой машине он работает. Я очень новичок в докере. Я могу добиться привязки порта к локальному хосту, но таким образом он становится зависимым от машины, т.е. нам нужно получить доступ к контейнеру через IP-адрес этой машины. Мои тесты выполняются в двух разных сетях, поэтому я хочу сделать их независимыми от машин. Итак, что я пытаюсь сделать, это: привязать контейнер к любому случайному желаемому IP-адресу (не уверен, что это может быть достигнуто, поскольку IP-адрес всегда должен быть уникальным в сети). Пожалуйста, дайте мне знать, достижимо ли это, и если да, то как. Заранее большое спасибо.
Docker-контейнер предоставляет статический IP-адрес
Ответы (2)
Чтобы подключить ваш контейнер к другому контейнеру, вы можете использовать сети докеров. Здесь приведен подробный ответ, который поможет вам настроить сеть и подключить контейнеры. И да, это не зависит от машины, если вы используете сети докеров.
Вы можете попробовать следующие 2 способа решения.
Создайте сеть и запустите свой контейнер в этой сети.
создание сети докеров --subnet=193.168.3.0/24 network_name
docker run --net network_name -p 193.168.3.18:15672 изображение
Создайте файл yml «docker-compose.yml» и добавьте в него следующее:
version: "2" services: containername: image: your-image-name:version restart: always expose: - "8080" networks: overlay: ipv4_address: 193.168.3.18 ports: - 8080:8080 networks: overlay: driver: bridge ipam: config: - subnet: 193.168.3.0/24
Сохраните файл и выполните приведенную ниже команду
docker-compose -f docker-compose.yml up -d
Вы можете использовать версию 3, если хотите использовать рой. После запуска вышеуказанной команды создается контейнер с именем «dir-name-of-yml_containername_1». Здесь вы создаете сеть с подсетью «193.168.3.0/24» и используете IP-адрес «193.168.3.18» для создания контейнера.
docker network remove rabbit_network
- person Altafhusen; 26.07.2017
docker run
statement? - person Thomas Stets   schedule 24.07.2017