[tenorflow], [bazel] Компилировать Tensorflow за прокси-сервером HTTP / HTTPS - HTTP 502 Bad gateway - PullRequest
0 голосов
/ 16 октября 2018

Я знаю, что это не новые вопросы, но у меня много проблем, когда я пытаюсь скомпилировать тензорный поток из источника.Похоже, что это "базель за прокси" дело.

  • Я скомпилирую на Fedora28
  • Я использую bazel 0.17.2 (устанавливается как об / мин из репозитория vbatts-bazel yum)
  • Я пытаюсь скомпилировать текущий master с github.com/tensorflow/tensorflow.git

Я работаю за HTTP / HTTPS-прокси.В среде установлено http_proxy / https_proxy (через /etc/environment, поэтому каждый получит envvar).Для тестов я установил envvar в нижнем и верхнем регистре.С помощью git / https, yum или wget через этот прокси все в порядке, поскольку эти envvar установлены.

При компиляции tenorflow (после шага ./configure) я получаю явную ошибку HTTP:

[user22@vm0 tensorflow]$ bazel build   --config=opt //tensorflow/tools/pip_package:build_pip_package
ERROR: error loading package '': Encountered error while reading extension file 'closure/defs.bzl': no such package '@io_bazel_rules_closure//closure': Error downloading [https://mirror.bazel.build/github.com/bazelbuild/rules_closure/archive/dbb96841cc0a5fb2664c37822803b06dab20c7d1.tar.gz, https://github.com/bazelbuild/rules_closure/archive/dbb96841cc0a5fb2664c37822803b06dab20c7d1.tar.gz] to /home/user22/.cache/bazel/_bazel_user22/673c993ff8d0b73d5fcaf03ddf761476/external/io_bazel_rules_closure/dbb96841cc0a5fb2664c37822803b06dab20c7d1.tar.gz: All mirrors are down: ***[Unable to tunnel through proxy. Proxy returns "HTTP/1.1 502 Bad Gateway"]***
ERROR: error loading package '': Encountered error while reading extension file 'closure/defs.bzl': no such package '@io_bazel_rules_closure//closure': Error downloading [https://mirror.bazel.build/github.com/bazelbuild/rules_closure/archive/dbb96841cc0a5fb2664c37822803b06dab20c7d1.tar.gz, https://github.com/bazelbuild/rules_closure/archive/dbb96841cc0a5fb2664c37822803b06dab20c7d1.tar.gz] to /home/user22/.cache/bazel/_bazel_user22/673c993ff8d0b73d5fcaf03ddf761476/external/io_bazel_rules_closure/dbb96841cc0a5fb2664c37822803b06dab20c7d1.tar.gz: All mirrors are down: ***[Unable to tunnel through proxy. Proxy returns "HTTP/1.1 502 Bad Gateway"]***
INFO: Elapsed time: 14.841s
INFO: 0 processes.
FAILED: Build did NOT complete successfully (0 packages loaded)

Проблема, очевидно, заключается в ошибке HTTP / 1.1 502.Я знаю, что у других людей были проблемы при использовании Bazel за прокси, но я не нашел ссылки на эту ошибку HTTP.Есть идеи о том, как я могу это исправить?

1 Ответ

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

Ошибки «502 Bad gateway» обычно означают, что bazel попросил прокси-сервер сделать то, что ему не разрешено - в частности, bazel не отправляет GET-запросы напрямую к прокси-серверу, но напрямую запрашивает команду CONNECT (видно сstrace):

sendto(220, "CONNECT mirror.bazel.build:443 HTTP/1.1\r\nUser-Agent: Java/1.8.0_181\r\nHost: mirror.bazel.build\r\nAccept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2\r\nProxy-Connection: keep-alive\r\n\r\n", 189, 0, NULL, 0 <unfinished ...>

Необходимо обновить конфигурацию прокси-сервера, чтобы разрешить команды CONNECT.

В качестве альтернативы, некоторые проблемы с bazel github указывают на то, чтоВы можете посмотреть на ошибки и загрузить контент самостоятельно, но это, похоже, не очень хорошо заканчивается.

...