Как использовать локальный DNS в Pyppeteer
У меня есть обратный прокси-сервер, интерфейс и бэкэнд-контейнер. Серверная часть работает под управлением Pyppeteer, а обратный прокси-сервер настроен с псевдонимом "servicename.localhost" в docker-compose.yml:
networks:
default:
aliases:
- servicename.localhost
Таким образом, я могу curl --insecure https://servicename.localhost
из внутреннего контейнера, но, к сожалению, кажется, что Chromium в том же контейнере игнорирует этот параметр, и поэтому "servicename.localhost" разрешается в 127.0.0.1:
pyppeteer.errors.PageError: net:: ERR_CONNECTION_REFUSED по адресу https://servicename.localhost/login
Как я могу обойти это?
Похоже, что это может быть связано с предварительной выборкой DNS или асинхронным DNS, но, похоже, нет флага командной строки, чтобы больше отключить любой из них.
То, что я пробовал, ничего не изменило:
- Добавление
"--host-rules='MAP servicename.localhost {}'".format(socket.gethostbyaddr('servicename.localhost')[-1][0])
кpyppeteer.launch
args
параметр списка. - Добавление
"--host-resolver-rules=[same as above]
кpyppeteer.launch
args
параметр списка.