Docker: временная ошибка при разрешении deb.debian.org - PullRequest
0 голосов
/ 03 мая 2020

У меня есть Rails приложение, которое я хочу развернуть, используя Docker на Ubuntu сервере. У меня уже установлен Dockerfile для приложения, сейчас я хочу просмотреть nginx conf в его контейнере.

Я выполнил команду ниже, чтобы запустить контейнер nginx в интерактивном режиме:

docker run -i -t nginx:latest /bin/bash

Сейчас я пытаюсь установить редактор nano, чтобы просмотреть конфигурацию для конфигурации nginx (nginx.conf), используя следующие команды:

apt-get update
apt-get install nano
export TERM=xterm

Однако Когда я запускаю первую команду apt-get update, я получаю сообщение об ошибке ниже:

Err:1 http://security.debian.org/debian-security buster/updates InRelease
  Temporary failure resolving 'security.debian.org'
Err:2 http://deb.debian.org/debian buster InRelease                  
  Temporary failure resolving 'deb.debian.org'
Err:3 http://deb.debian.org/debian buster-updates InRelease
  Temporary failure resolving 'deb.debian.org'
Reading package lists... Done    
W: Failed to fetch http://deb.debian.org/debian/dists/buster/InRelease  Temporary failure resolving 'deb.debian.org'
W: Failed to fetch http://security.debian.org/debian-security/dists/buster/updates/InRelease  Temporary failure resolving 'security.debian.org'
W: Failed to fetch http://deb.debian.org/debian/dists/buster-updates/InRelease  Temporary failure resolving 'deb.debian.org'
W: Some index files failed to download. They have been ignored, or old ones used instead.

Я очень хорошо проверил, что это не имеет ничего общего с сетевым подключением. Мне нужна помощь. Спасибо.

Ответы [ 2 ]

0 голосов
/ 03 мая 2020

Я легко разрешил это с помощью:

- docker exec -it nginx bash (Go inside container)
- ping google.com (if not working)
- exit (Exit from container)
- sudo service docker restart

Пожалуйста, также подтверждает /etc/sysctl.conf

- net.ipv4.ip_forward = 1

sudo sysctl -p /etc/sysctl.conf

0 голосов
/ 03 мая 2020

Вот как я это решил :

Запустите контейнер docker для приложения в интерактивном режиме, в моем случае это контейнер nginx:

docker run -i -t nginx:latest /bin/bash

Запустите команду ниже, чтобы предоставить read разрешение роли others для файла resolv.conf:

chmod o+r /etc/resolv.conf

Примечание : если у вас возникла эта проблема на вашем хост-компьютере (Ubuntu Linux OS), а не для контейнеров Docker, затем выполните ту же команду, добавив к нему в терминале хост-компьютера sudo:

sudo chmod o+r /etc/resolv.conf

Постарайтесь выйти из вашего bash интерактивный терминал после запуска:

exit

А затем откройте новый bash интерактивный терминал и снова выполните команды:

apt-get update
apt-get install nano
export TERM=xterm

Теперь все должно работать нормально.

Ссылка на это в Digital Ocean: Ошибка Apt: временный сбой при разрешении 'deb.debian.org'

Вот и все.

Я надеюсь, что это помогает

...