Как использовать и докер, и апач, используя только один порт? - PullRequest
0 голосов
/ 27 апреля 2018

У меня apache, использующий порт 80, и сервер доступен только снаружи через порт 80 из-за брандмауэра. Если я выполню команду, подобную следующей, на порту 80 возникнет конфликт. Может кто-нибудь показать мне, как поддерживать оба приложения на одном и том же порту (два домена сопоставлены одному и тому же IP-адресу, поэтому они могут быть предположительно разделены доменом? название)? Спасибо.

docker run -d -p 80:8787 quay.io/hemberg-group/scrna-seq-course-rstudio

1 Ответ

0 голосов
/ 27 апреля 2018

Запустите докер с помощью -p 80:8787, чтобы попытаться прослушать физический компьютер. а также Apache прослушивает 80 по умолчанию.

Вы не можете запустить более одного программиста для прослушивания одного и того же PORT, но если вы просто хотите отобразить карту 80, которую вы открываете для общего доступа к внутреннему серверу, вы можете использовать Nginx как ваш сервер делегирования. и тогда вы можете запустить количество серверов.

Вот простая конфигурация вашего Nginx

server { # php/fastcgi
    listen       80;
    server_name  domain1.com www.domain1.com;
    access_log   logs/domain1.access.log  main;
    root         html;

    location ~ \ {
      server   127.0.0.1:8787;
      server   127.0.0.1:8788;
      server   127.0.0.1:8780;
    }
} 

И ваш контейнер может работать следующим образом:

docker run -d -p 8787:8787 quay.io/hemberg-group/scrna-seq-course-rstudio
docker run -d -p 8788:8787 quay.io/hemberg-group/scrna-seq-course-rstudio

И ваш Apache сервер может быть настроен с другим PORT, например 8780

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