Сбой сборки Docker — Не удается найти пакет

#ruby #docker #dockerfile

Вопрос:

Пытаюсь добавить jemalloc в ruby в моем проекте, но не удается в этой строке

 RUN apt-get update amp;amp; apt-get install libjemalloc1 amp;amp; rm -rf /var/lib/apt/lists/*
 

Докерфайл

 
FROM ruby:2.6.5-slim-buster


RUN apt-get update amp;amp; apt-get install libjemalloc1 amp;amp; rm -rf /var/lib/apt/lists/*

ENV LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libjemalloc.so.1
 

Получаю E: Unable to locate package libjemalloc1 сообщение об ошибке.

Есть ли у меня способ проверить, действительно ли пакет существует?

Есть какие-нибудь обходные пути?

Комментарии:

1. Вы всегда можете сделать apt search <package_name> это , он даже поддерживает регулярное выражение. Попробовал сделать это с базового изображения и нашел libjemalloc2 , но нет libjemalloc1 .

2. большое спасибо @frippe! запуск apt search дал мне — libjemalloc-dev/oldstable 5.1.0-3 arm64 — libjemalloc2/oldstable 5.1.0-3 arm64 действительно ищет v 3.x, хотя на libjemalloc1 это означает, что он недоступен для версии ruby, которую я использую, или вообще недоступен? вы бы знали?

3. Вы можете искать пакеты здесь . 3.x, похоже, все еще там, но не в репо buster. Если ручное добавление исходного кода и извлечение нужной версии не работает для вас, вы всегда можете создать ее из исходного кода

4. под добавлением источника вы подразумеваете выполнение команды «добавить-apt-репозиторий»?

5. Да, либо это, либо добавление его под /etc/apt/sources.list.d/