Есть локальная сеть. Для доступа в инет работает прокси-сервер. На одном из внутренних серверов поставил docker. При первой же попытке что-то получить докером из инета появилась ошибка
docker search debian
Error response from daemon: Get "https://index.docker.io/v1/search?q=debian&n=25": dial tcp: lookup index.docker.io on 192.168.10.10:53: server misbehaving
Тут 192.168.10.10 это внутренний DNS сервер сети.
Переменных среды HTTP_PROXY там нет. Единственное упоминание нашего прокси в системе - в APT настроено получение программ через прокси. В файле /etc/apt/apt.conf есть
Acquire::http::Proxy "http://proxy.domain.ua:80/";
Но это не должно влиять на нашу проблему.
Прежде чем ставить переменные среды, полез в документацию.
На официальном сайте докера помогла статья Configure the daemon with systemd. Из- приведенных там способов выбрал второй
- Править файл /etc/docker/daemon.json
- Добавить в настройки юнита systemd
В папке /etc/systemd/system надо создать папку docker.service.d и в ней файл http-proxy.conf такого вида
cat /etc/systemd/system/docker.service.d/http-proxy.conf
[Service]
Environment="HTTP_PROXY=http://proxy.domain.ua:80"
Environment="HTTPS_PROXY=http://proxy.domain.ua:80"
Environment="NO_PROXY=localhost,127.0.0.1,.domain.ua"
Где "proxy.domain.ua" єто наш прокси, а 80 - порт прокси И в командной строке сделать
systemctl daemon-reload
systemctl restart docker
Это помогло.
По сути вопроса это все, но хочу еще описать другую ошибку с которой я столкнулся в процессе решения.
Когда я первый раз создал файл http-proxy.conf, то докер начал ошибаться по другому
docker search debian
Error response from daemon: Get "https://index.docker.io/v1/search?q=debian&n=25": proxyconnect tcp: tls: first record does not look like a TLS handshake
Чего то ему не понравилось рукопожатие TLS
Проблема оказалось в неправильном значении переменной HTTPS_PROXY. Я в ней написал префикс "https://" как показано ниже, а надо просто "http://". Не знаю во всех ли случаях так надо делать
Environment="HTTPS_PROXY=https://proxy.domain.ua:80"
Дякую за увагу.
Комментариев нет:
Отправить комментарий