переводить бродячие высказывания в заявления докера - PullRequest
0 голосов
/ 14 сентября 2018

Мне нужно перевести файл vagrant в команды Docker для настройки тестового сервера. У меня нет опыта использования docker, и для следующей команды я не нашел решения.

Vagrant.configure("2") do |config|

  config.vm.network(:forwarded_port, guest: 5432, host: 5432, host_ip: "127.0.0.1")

Я пробовал что-то вроде создание докерской сети --gateway 127.0.0.1 forwarded_port

Но я не нашел способа установить порты, и я не уверен, является ли «forwarded_port» именем моей сети или аргументом для метода в фоновом режиме.

Я благодарен за любую помощь

Matthias

1 Ответ

0 голосов
/ 14 сентября 2018

Эта конкретная строка выглядит так, как будто она вызывает переадресацию порта из контейнера / виртуальной машины на хост, и она должна быть точно эквивалентна опции docker run -p 127.0.0.1:5432:5432 (где эти три части соответствуют host_ip, host и guest из вашего заявления Бродяги).

Обратите внимание, что среда Docker и типичное использование могут отличаться от типовых настроек ВМ. Как конкретный пример, вы обычно не пытаетесь запустить базу данных PostgreSQL внутри контейнера вашего приложения; Вы отдельно запустите контейнер базы данных и расскажете об этом своему приложению. Типичная настройка только для командной строки:

docker network create mynet
docker run -p 5432:5432 --net mynet --name db postgres:9.6
docker run -p 8080:8080 --net mynet --name app -e PGHOST=db myapp:20180914

Docker Compose - это часто используемый инструмент для запуска нескольких контейнеров, которые работают вместе (и вы можете найти много примеров файлов app + database docker-compose.yml, прочитав SO вопросы).

...