2016-09-08 2 views
0

Для начала я за корпоративным прокси. Я использую docker 1.12.0Docker: Используя MacOS, как я могу вытащить CENTOS за прокси?

Использование OSX, мой .bash_profile выглядит следующим образом:

export http_proxy='http://server-ip:port/' 
export https_proxy='http://server-ip:port/' 
export no_proxy='localhost,0.0.0.0,127.0.0.1' 

Что меня озадачивает, что я в состоянии тянуть ubuntu изображение без каких-либо проблем.

docker pull ubuntu:latest 

При попытке вытащить centos я получаю следующее сообщение об ошибке:

docker pull centos:latest 
latest: Pulling from library/centos 
8d30e94188e7: Pulling fs layer 

dial tcp i/o timeout 

Я готов через this post о проблемах CentOS связи. Я считаю, что я следовал предложенным ответам, но мне все равно не повезло.

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

+0

Возможный дубликат [Docker/Boot2Docker: установить прокси http/https для docker на osx] (http://stackoverflow.com/questions/24489265/docker-boot2docker-set-http-https-proxies-for-docker- on-osx) – BMitch

ответ

1

Это болезненно очевидно сейчас, и вместо того, чтобы обратиться к Интернету первый, я просто проверил варианты предпочтений.

В Docker for Mac, v1.12.0 после установки, нажмите значок докеры на панели инструментов (в правом верхнем углу рядом с часами) и выберите «Настройки».

На вкладке «Дополнительно» вы можете ввести информацию прокси.

Спасибо BMitch за ваше время, я ценю это!

0

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

Надеюсь, что это сработает.

0

Настройка переменных окружения в вашем .bashrc обновит сетевую конфигурацию для любых команд, которые вы запускаете в качестве пользователя. Тем не менее, Docker разработан как клиент-серверное приложение, а выходы изображения запускаются с сервера (dockerd). Docker имеет docs on how to configure systemd with a proxy, который должен решить вашу проблему. Короче говоря, вам нужно настроить следующее:

sudo -s 
mkdir /etc/systemd/system/docker.service.d 
cat >/etc/systemd/system/docker.service.d/http-proxy.conf <<EOF 
[Service] 
Environment="HTTP_PROXY=http://server-ip:port/" 
EOF 
systemctl daemon-reload 
systemctl restart docker 
exit 

Если вам не Systemd установлен, вы должны иметь возможность редактировать/и т.д./по умолчанию/докер. Запись, которую вы должны добавить, - export http_proxy="http://server-ip:port/".

Наконец, теперь я вижу, что вы на MacOS (вопрос о CentOS - это красная селедка, так как я уверен, что вы не можете вытащить изображение, и на самом деле вы не используете CentOS). В boot2docker, у вас есть следующая процедура:

boot2docker ssh 
sudo vi /var/lib/boot2docker/profile 
# include your "export HTTP_PROXY=http://server-ip:port/" here 
sudo /etc/init.d/docker restart 
exit 
+0

Привет, BMitch, Спасибо за ваш ответ! Ты прав. Моя физическая машина - MacOS. Я пытаюсь вытащить изображение «centos». У меня нет 'systemd', и у меня нет этого файла/файла:'/etc/default/docker'. Похоже, что 'boot2docker' устарел? Я не уверен, какие файлы я должен искать. – Damon

+0

Подключайтесь непосредственно к хосту vock для докеров с помощью оболочки, использующей любую док-станцию ​​CLI, которая дает вам MacOS. Вы должны быть внутри виртуальной машины, чтобы настроить это, и я уверен, что он по-прежнему остается boot2docker под обложками. Похоже, что они даже предоставили вам меню (расширенное) для настройки http-прокси в Docker для Mac: https://docs.docker.com/docker-for-mac/ – BMitch

+0

Да, сейчас чувствую себя довольно глупо. Еще раз спасибо. – Damon

Смежные вопросы