2015-09-22 4 views
1

Я пытаюсь установить супервизор внутри контейнера Docker ubuntu: trusty. Это небольшой пример Dockerfile, который демонстрирует мою проблему:Не удается установить диспетчер на контейнер Docker ubuntu: trusty

FROM ubuntu:trusty 
MAINTAINER someone <[email protected]> 

# Get supervisor: 
RUN apt-get update && apt-get install -y supervisor 

Когда я пытаюсь построить изображение из этого Dockerfile, я получаю этот выход:

$ docker build -t example . 
Sending build context to Docker daemon 71.17 kB 
Step 0 : FROM ubuntu:trusty 
---> 91e54dfb1179 
Step 1 : MAINTAINER someone <[email protected]> 
---> Running in fc8d787ecfd5 
---> 0619f1a6c1f1 
Removing intermediate container fc8d787ecfd5 
Step 2 : RUN apt-get update && apt-get install -y supervisor 
---> Running in 01285d3a1d4b 
Ign http://archive.ubuntu.com trusty InRelease 
Ign http://archive.ubuntu.com trusty-updates InRelease 
Ign http://archive.ubuntu.com trusty-security InRelease 
Hit http://archive.ubuntu.com trusty Release.gpg 
Get:1 http://archive.ubuntu.com trusty-updates Release.gpg [933 B] 
Get:2 http://archive.ubuntu.com trusty-security Release.gpg [933 B] 
Get:3 http://archive.ubuntu.com trusty Release [11.9 kB] 
Get:4 http://archive.ubuntu.com trusty-updates Release [63.5 kB] 
Ign http://archive.ubuntu.com trusty Release 
Get:5 http://archive.ubuntu.com trusty-security Release [63.5 kB] 
Get:6 http://archive.ubuntu.com trusty/main Sources [1335 kB] 
Get:7 http://archive.ubuntu.com trusty/restricted Sources [5335 B] 
Get:8 http://archive.ubuntu.com trusty/universe Sources [7926 kB] 
Ign http://archive.ubuntu.com trusty/main amd64 Packages/DiffIndex 
Ign http://archive.ubuntu.com trusty/restricted amd64 Packages/DiffIndex 
Get:9 http://archive.ubuntu.com trusty/universe amd64 Packages [7589 kB] 
Get:10 http://archive.ubuntu.com trusty-updates/main Sources [294 kB] 
Get:11 http://archive.ubuntu.com trusty-updates/restricted Sources [4521 B] 
Get:12 http://archive.ubuntu.com trusty-updates/universe Sources [171 kB] 
Get:13 http://archive.ubuntu.com trusty-updates/main amd64 Packages [779 kB] 
Get:14 http://archive.ubuntu.com trusty-updates/restricted amd64 Packages [22.7 kB] 
Get:15 http://archive.ubuntu.com trusty-updates/universe amd64 Packages [407 kB] 
Get:16 http://archive.ubuntu.com trusty-security/main Sources [119 kB] 
Get:17 http://archive.ubuntu.com trusty-security/restricted Sources [1874 B] 
Get:18 http://archive.ubuntu.com trusty-security/universe Sources [34.8 kB] 
Get:19 http://archive.ubuntu.com trusty-security/main amd64 Packages [433 kB] 
Get:20 http://archive.ubuntu.com trusty-security/restricted amd64 Packages [14.8 kB] 
Get:21 http://archive.ubuntu.com trusty-security/universe amd64 Packages [150 kB] 
Get:22 http://archive.ubuntu.com trusty/main amd64 Packages [1743 kB] 
Get:23 http://archive.ubuntu.com trusty/restricted amd64 Packages [16.0 kB] 
Fetched 21.2 MB in 19s (1076 kB/s) 
Reading package lists... 
W: GPG error: http://archive.ubuntu.com trusty Release: The following signatures were invalid: BADSIG 40976EAF437D05B5 Ubuntu Archive Automatic Signing Key <[email protected]> 
Reading package lists... 
Building dependency tree... 
Reading state information... 
The following extra packages will be installed: 
    libpython-stdlib libpython2.7-minimal libpython2.7-stdlib python 
    python-meld3 python-minimal python-pkg-resources python2.7 python2.7-minimal 
Suggested packages: 
    python-doc python-tk python-distribute python-distribute-doc python2.7-doc 
    binutils binfmt-support 
The following NEW packages will be installed: 
    libpython-stdlib libpython2.7-minimal libpython2.7-stdlib python 
    python-meld3 python-minimal python-pkg-resources python2.7 python2.7-minimal 
    supervisor 
0 upgraded, 10 newly installed, 0 to remove and 12 not upgraded. 
Need to get 4141 kB of archives. 
After this operation, 17.9 MB of additional disk space will be used. 
WARNING: The following packages cannot be authenticated! 
    libpython-stdlib python-minimal python python-meld3 supervisor 
E: There are problems and -y was used without --force-yes 
The command '/bin/sh -c apt-get update && apt-get install -y supervisor' returned a non-zero code: 100 

Там, кажется, какая-то проблема аутентификации там , Иногда я получаю другие сообщения об ошибках. Например, во втором периоде это выход я получил:

$ docker build -t example . 
Sending build context to Docker daemon 71.17 kB 
Step 0 : FROM ubuntu:trusty 
---> 91e54dfb1179 
Step 1 : MAINTAINER someone <[email protected]> 
---> Using cache 
---> 0619f1a6c1f1 
Step 2 : RUN apt-get update && apt-get install -y supervisor 
---> Running in 0d4362e9e578 
Ign http://archive.ubuntu.com trusty InRelease 
Ign http://archive.ubuntu.com trusty-updates InRelease 
Ign http://archive.ubuntu.com trusty-security InRelease 
Get:1 http://archive.ubuntu.com trusty Release.gpg [72 B] 
Get:2 http://archive.ubuntu.com trusty-updates Release.gpg [933 B] 
Get:3 http://archive.ubuntu.com trusty-security Release.gpg [933 B] 
Get:4 http://archive.ubuntu.com trusty Release [11.9 kB] 
Get:5 http://archive.ubuntu.com trusty-updates Release [63.5 kB] 
Err http://archive.ubuntu.com trusty Release 

Get:6 http://archive.ubuntu.com trusty-security Release [63.5 kB] 
Get:7 http://archive.ubuntu.com trusty-updates/main Sources [294 kB] 
Get:8 http://archive.ubuntu.com trusty-updates/restricted Sources [4521 B] 
Get:9 http://archive.ubuntu.com trusty-updates/universe Sources [171 kB] 
Get:10 http://archive.ubuntu.com trusty-updates/main amd64 Packages [779 kB] 
Get:11 http://archive.ubuntu.com trusty-updates/restricted amd64 Packages [22.7 kB] 
Get:12 http://archive.ubuntu.com trusty-updates/universe amd64 Packages [407 kB] 
Get:13 http://archive.ubuntu.com trusty-security/main Sources [119 kB] 
Get:14 http://archive.ubuntu.com trusty-security/restricted Sources [1874 B] 
Get:15 http://archive.ubuntu.com trusty-security/universe Sources [34.8 kB] 
Get:16 http://archive.ubuntu.com trusty-security/main amd64 Packages [433 kB] 
Get:17 http://archive.ubuntu.com trusty-security/restricted amd64 Packages [14.8 kB] 
Get:18 http://archive.ubuntu.com trusty-security/universe amd64 Packages [150 kB] 
Fetched 2571 kB in 7s (347 kB/s) 
Reading package lists... 
W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: http://archive.ubuntu.com trusty Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 16126D3A3E5C1192 

W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/trusty/Release 

W: Some index files failed to download. They have been ignored, or old ones used instead. 
Reading package lists... 
Building dependency tree... 
Reading state information... 
Package supervisor is not available, but is referred to by another package. 
This may mean that the package is missing, has been obsoleted, or 
is only available from another source 

E: Package 'supervisor' has no installation candidate 
The command '/bin/sh -c apt-get update && apt-get install -y supervisor' returned a non-zero code: 100 

Выход отличается, вероятно, из-за особенностей кэширования Docker в.

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

+1

Пробовали ли вы https://github.com/edgester/docker-gerrit/blob/master/Dockerfile # L15-L19? – VonC

+0

@VonC: Спасибо за ваш ответ. Я попробовал, но у меня все еще есть какая-то ошибка проверки подлинности. Это строка ошибки, которую я получаю: W: ошибка GPG: http://archive.ubuntu.com trusty Release: Следующие подписи не могут быть проверены, поскольку открытый ключ недоступен: NO_PUBKEY 16126D3A3E5C1192. Интересно, проблема с моей машиной, а не с самим контейнером. – real

+0

Если я изменил первую строку на «FROM ubuntu: wily» (Ubuntu 15.10), все будет хорошо. Я хочу работать с ubuntu 14.04, потому что это долгосрочное издание поддержки, но если у меня нет выбора, это хитрый. – real

ответ

2

Для такого рода ошибки

GPG error: archive.ubuntu.com 
trusty Release: The following signatures couldn't be verified because 
the public key is not available: NO_PUBKEY 16126D3A3E5C1192 

Проверить "How to fix GPG in updater" и "How do I fix the GPG error “NO_PUBKEY”?"

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 16126D3A3E5C1192 && \ 
sudo apt-get update 
+1

У меня проблема с фиксацией вещей, доверяя некоторому внешнему ключу. Для меня это кажется неправильной философией безопасности. Почему этот ключ не доверяет по умолчанию Ubuntu 14.04. И почему, например, https://github.com/edgester/docker-gerrit/blob/master/Dockerfile#L15-L19 не нужно это делать? Раньше я имел возможность устанавливать супервизор в прошлом, не доверяя внешним ключам. – real

+0

@real Я согласен, это было всего лишь обходным путем, чтобы вы продвигались вперед. Я буду контролировать https://github.com/docker/docker/issues/16307 – VonC

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