Не удается установить пакеты внутри образа docker Ubuntu


Я установил Ubuntu 14.04 image на docker. После этого, когда я пытаюсь установить пакеты внутри образа ubuntu, я не могу найти ошибку пакета:

apt-get install curl

Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package curl

Как исправить эту ошибку?

5 164

5 ответов:

это потому, что в образе нет кэша пакетов, вам нужно запустить:

apt-get update

перед установкой пакетов, и если ваша команда находится в Dockerfile, вам понадобится:

apt-get -y install curl

для подавления стандартного вывода команды используйте -qq. Е. Г.

apt-get -qq -y install curl

С docs на мая 2018:

всегда совмещают RUN apt-get update с apt-get install в то же RUN заявление, например

RUN apt-get update && apt-get install -y package-bar

(...)

используя apt-get update только в RUN оператор вызывает кэширование вопросы и последующие apt-get install инструкции не получится.

добавить следующую команду в Dockerfile:

RUN apt-get update

убедитесь, что у вас нет синтаксических ошибок в вашем Dockerfile, так как это также может вызвать эту ошибку. Правильный пример:

RUN apt-get update \
    && apt-get -y install curl \
    another-package

это была комбинация исправления синтаксической ошибки и добавления apt-get update это решило проблему для меня.

ошибка приходит, потому что у вас нет пакета или у вас нет РЕПО, которое его содержит.

простое решение, вы должны сделать apt-получить обновление и потом попробовать.