Как создать URL-адрес для доступа к службе docker, работающей на сервере linux - PullRequest
0 голосов
/ 26 мая 2020

Я хочу предоставить доступ к контейнеру docker, в котором запущена какая-либо служба на порту, например X, на сервере Linux, используя URL-адрес, например http: // / ? Какие должны быть ступеньки?

Ответы [ 3 ]

1 голос
/ 26 мая 2020

Вы можете сделать это, предоставив свой docker локальный порт своему хост-компьютеру

docker run -p hostport:containerport nginx

Вы также можете сделать это для нескольких портов

docker run -p 80:80 -p 5000:5000 nginx

Теперь у вас есть http://localhost: порт

у вас есть несколько способов добавить домен на свой компьютер

  1. вы можете добавить URL-адрес, добавив домен к IP-адресу хост-машины . для этого требуется переадресация IP-порта вашего хост-компьютера.

  2. вы можете использовать https://ngrok.com для бесплатного IP-адреса в домен без переадресации портов.

  3. также, вы можете сделать это локально, отредактировав файл хоста вашего компьютера

0 голосов
/ 27 мая 2020

Что вам нужно, так это прокси-сервер, работающий в docker вместе с вашими услугами. Для этого можно настроить Nginx, Apache или Traefik. Идея заключалась бы в том, что только прокси-сервер действительно имеет открытый порт и направляет трафик c туда, где он должен go во внутреннюю Docker сеть на основе пути.

0 голосов
/ 26 мая 2020

Вам нужно открыть порт контейнера для хост-машины, и тогда вы сможете получить к нему доступ. Ниже приведен пример для Nginx

docker run -p 80:80 nginx

, поскольку -p открывает порт контейнера 80 для порта хоста 80. Затем вы можете получить доступ к услуге, нажав localhost:80 или 127.0.0.1:80 или machineIP:80 в своем браузере

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...