Почему Docker не может найти существующий пакет? - PullRequest
1 голос
/ 07 мая 2019

Я новичок в использовании Docker, так что это может быть очевидным для некоторых. Я использую Ubuntu 18.04TLS.

Я хочу установить пакет "python3-protobuf" внутри образа. Я пытаюсь сделать это с помощью следующей строки в Dockerfile:

...
RUN apt-get update && \
    apt-get install -y --no-install-recommends \
        python3-protobuf \
        <some other packages to be installed>
...

Когда я запускаю 'docker build -t myImageName', я получаю сообщение:

E: не удается найти пакет python3-protobuf

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

Я знаю, что имя пакета правильное, потому что в терминале, когда я 'apt search' для него, оно найдено. Кроме того, в dockerfile я делаю рекомендуемые шаги «обновления» и «установки». Так что это надо найти. Есть идеи, почему это не так?

1 Ответ

1 голос
/ 08 мая 2019

@ banuj ответил на этот вопрос.

Пакет "python3-protobuf" стал доступен с Ubuntu 18.04 и далее.Базовое изображение, которое я сделал, использует Ubuntu 16.04.

У меня есть два способа решить эту проблему:

  1. Использовать базовое изображение с Ubuntu 18.04 (или более поздней версии)
  2. Используйте pip для установки пакета.

В итоге я выбрал второй вариант.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...