Я наконец понял, как правильно настроить панель инструментов Docker на Windows 7 за корпоративным прокси-сервером с сертификатами HTTPS.
Ниже приведены шаги
- Установить Docker Toolbox
- После установки перейдите в C: / Users //. Docker / machine / machine / default и откройте config.json. Если у вас нет этой папки, откройте «Терминал быстрого запуска Docker» со своего рабочего стола, чтобы создать виртуальную коробочную докер-машину для себя.
- Добавьте следующие строки под
{
"HostOptions": {
...
"EngineOptions": {
...
"Env": [
"HTTP_PROXY=http://<username>:<pwd>@<host>:<port>",
"HTTPS_PROXY=http://<username>:<pwd>@<host>:<port>",
"NO_PROXY=<docker-machine ip>"
],
}
}
}
Обратите внимание на http в HTTPS_PROXY.
4. После выполнения вышеуказанного шага необходимо установить сертификаты компании.
5. Получите набор корпоративных корневых сертификатов, которые должны быть установлены в вашем корпоративно настроенном браузере. В Chrome вы можете перейти в «Настройки», нажать «Показать дополнительные настройки» и прокрутить вниз до HTTPS / SSL, где вы можете выбрать «Управление сертификатами». Моя организация поместила их в доверенные корневые центры сертификации и назвала их в честь организации. Экспортируйте каждый (у меня есть два), по одному, убедившись, что вы выбрали формат DER.
- Как только вы сохранили их в известном месте, вы захотите преобразовать их в формат PEM. Самым простым способом, который я нашел для этого, было запустить команду openssl.exe [1] из терминала быстрого запуска Docker.
openssl x509 -inform der -in Certificate.cer -out Certificate.pem
Как только у вас есть файлы .pem, вы захотите скопировать их в папку, к которой у вашего компьютера Docker есть доступ. Я создал каталог в c: \ Users \ my.username \ certs и скопировал их туда.
Этот шаг может не быть строго необходимым, но это то, что я сделал, и он работает. Вы захотите скопировать эти сертификаты в раздел boot2docker, который является постоянным. Я подключаюсь к моей машине по умолчанию, и это то, что вам нужно сделать для шага 5.
MINGW64: $ docker-machine ssh default
docker @ default: ~ $ sudo -s
root @ default: / home / docker # mkdir / var / lib / boot2docker / certs
root @ default: / home / docker # cp /c/Users/my.username/certs/*.pem
/ Вар / Библиотека / boot2docker / сертификаты /
Теперь пришло время написать скрипт bootlocal.sh, который будет копировать сертификаты в нужное место при каждом запуске системы. [2] Если вы этого еще не сделали, откройте SSH-соединение с машиной, выполнив Шаг 4.
touch /var/lib/boot2docker/bootlocal.sh && chmod + x /var/lib/boot2docker/bootlocal.sh
vi /var/lib/boot2docker/bootlocal.sh
Вставьте следующее и сохраните файл:
! / Бен / ш
mkdir -p /etc/docker/certs.d && cp certs / certificate.pem
/etc/docker/certs.d
Перезагрузите компьютер либо с помощью команды перезагрузки изнутри компьютера, либо с помощью команды docker-machine с терминала Docker:
перезапуск докер-машины по умолчанию
Теперь вы должны быть в состоянии запустить «Привет-мир» и других. Надеюсь, это поможет.
Ссылка: Docker в Windows (Boot2Docker) - сертификат подписан неизвестной ошибкой органа