#docker #ubuntu #debian
#docker #ubuntu #debian
Вопрос:
Я следую
Настройка службы apt-cacher-ng
https://docs.docker.com/engine/examples/apt-cacher-ng/
но не удалось запустить его.
Я успешно выполнил, чтобы
Чтобы просмотреть файлы журналов, которые хранятся в команде по умолчанию, вы можете использовать:
$ docker logs -f test_apt_cacher_ng
и я получаю
$ docker logs -f test_apt_cacher_ng
WARNING: No configuration was read from file:sfnet_mirrors
Starting apt-cacher-ng: apt-cacher-ng.
Но это все, что я могу сделать, и дальше я идти не могу.
Я думаю, что мой шаг:
$ docker run -d -p 3142:3142 --name test_apt_cacher_ng eg_apt_cacher_ng
не выдает мне apt_cacher_ng
порт at 3142
, потому что:
$ ip a s | grep 'docker0$'
inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
$ nc -z 172.17.0.1 3142 | wc
0 0 0
$ lsof -i :3142 | wc
0 0 0
Что еще я могу проверить, чтобы убедиться, что у меня есть настроенная служба apt-cacher-ng, и она также запущена?
Комментарии:
1. Каков результат
docker ls
, правильно ли выполняется ваш контейнер?2. Дублируйте для пользователей, которые используют
apt-cacher
(без NG): unix.stackexchange.com/questions/684123 /…
Ответ №1:
Подключение к сети сложнее, поскольку контейнер выполняется в собственном сетевом пространстве имен. Смотрите прослушивания:
$ netstat -tanp | grep 3142
tcp 0 0 172.17.0.1:39182 172.17.0.1:3142 TIME_WAIT -
tcp6 0 0 :::3142 :::* LISTEN 46336/docker-proxy
Лучшим вариантом будет проверка из операционной системы хоста (apt-cacher-ng доступен на всех интерфейсах через порт 3142) с помощью curl
:
$ curl http://127.0.0.1:3142
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="X-UA-Compatible" content="IE=8" />
<meta name="MSSmartTagsPreventParsing" content="true" />
<title>Not Found or APT Reconfiguration required</title>
<link rel="stylesheet" type="text/css" href="/style.css" />
</head>
...
Комментарии:
1. Большое спасибо, Ян, за информацию о том, как подтвердить, запущена ли моя служба apt-cacher-ng! Я заставил ее работать сейчас.