Создание (2) докеров для приложения реагирования с внешним интерфейсом узла.Как настроить параметры прокси-сервера для предотвращения взлома приложения, если оно запускается изначально? - PullRequest
0 голосов
/ 25 октября 2018

У меня клиент-сервер реагирует + приложение node.js.Внешний интерфейс связывается с API через прокси в пакетах.json.

"proxy": "http://localhost:5000/"

Я могу настроить клиент и API, запустив их в двух отдельных контейнерах докера через docker-compose.Это позволяет использовать псевдоним вместо localhost:

"proxy": "http://server:5000/"

Это исправляет docker - но ломает его, если приложение будет запускаться изначально вне docker.Он не может преобразовать сервер в локальный хост (или IP-адрес).

Есть ли способ для приложения определить, выполняется ли оно в докере, и использовать другой прокси-сервер?Или способ перехода на второй прокси-сервер при сбое первого прокси-сервера?

1 Ответ

0 голосов
/ 25 октября 2018

Если вы запускаете сборку веб-пакета в своем док-контейнере, вы можете указать URL-адрес прокси, передав переменную окружения из докера в веб-пакет с помощью флага -e:

docker run -e "PROXY_URL=http://server:5000/" 

Затем вы можете указать PROXY_URL.чтобы отреагировать, используя DefinePlugin :

plugins: [
  new webpack.DefinePlugin({
    PROXY_URL: JSON.stringify(process.env.PROXY_URL)
  })
]

веб-пакета. Тогда вы можете просто прочитать PROXY_URL как переменную внутри вашего приложения.

...