У меня есть корпоративный сервер, который должен использовать прокси для исходящего трафика. Следуя документации докеров Microsoft, я выполнил команды Powershell:
[Environment]::SetEnvironmentVariable("HTTP_PROXY", "http://my.secret.proxy.net:8888", [EnvironmentVariableTarget]::Machine)
[Environment]::SetEnvironmentVariable("HTTPS_PROXY", "https://my.secret.proxy.net:8888", [EnvironmentVariableTarget]::Machine)
Restart-Service docker
, но запустил докер build
после этого дает мне:
Get https://registry-1.docker.io/v2/: proxyconnect tcp: tls: first record does not look like a TLS handshake
Я пробовал использовать http
вместо https
для прокси-адресов и т. д. Те же результаты. Прокси-сервер является прозрачным прокси-сервером и ничего не делает » smart ".
Запуск pip install flake8 --proxy = https: //my.secret.proxy.net: 8888
работает, поэтому я знаю, что прокси работает.
Есть идеи? продолжить отладку? Спасибо!
В вашем "HTTPS_PROXY", "https://my.secret.proxy.net:8888"
измените https://
] на http://
В текущей версии Docker для Windows есть раздел ресурсы -> прокси пользовательского интерфейса, где вы настраиваете прокси для использования для получения изображений.
Ссылка:https://docs.docker.com/config/daemon/systemd/#httphttps-proxy
Вам по-прежнему необходимо настроить переменные прокси в запущенных контейнерах. Для этого вы можете обновить ~/.docker/config.json
с помощью :
{
"proxies":
{
"default":
{
"httpProxy": "http://192.168.1.12:3128",
"httpsProxy": "http://192.168.1.12:3128",
"noProxy": "*.test.example.com,.example2.com,127.0.0.0/8"
}
}
}
. Я не уверен, где это находится в Windows, особенно если вы не используете WSL2, но файл уже должен существовать, если вы сделали docker login
для войти в реестр.