Я попытался создать образ Docker и обнаружил, что пакет, связанный с OpenSSL, отсутствует, и apt не может исправить проблему. Это приводит к невозможности построения изображения. Похоже, это проблема с репозиторием безопасности Debian. Мысли?
Файл Docker: https://git.ulayer.net/snippets/44/raw
Вывод ошибок: https://git.ulayer.net/snippets/43/raw
Списки загруженных пакетов устарели. Ваша система знает о версии openssl 1.1.1d-0 + deb10u1, однако недавно была выпущена версия 1.1.1d-0 + deb10u2, которая заменяет старую версию.
Вам нужно обновить списки; даже если в вашем файле докеров apt-get update
, вывод показывает Using cache
что в данном случае бесполезно. Конечно, в этом случае используется кэшированное изображение, а не кешированная информация о apt (хотя кэшированное изображение содержит информацию о apt).
Наверное, проще всего объединить два шага apt-get update
и apt-get install ...
:
RUN apt-get update && apt-get install -y openvpn git netcat ca-certificates inetutils-ping curl wget dnsutils postgresql-client mariadb-client libssl-dev libxml2-dev libyaml-dev libgmp-dev libreadline-dev libz-dev libsqlite3-dev libpq-dev libmariadb-dev pkg-config libpcre3-dev libevent-dev build-essential sudo iptables htop procps apt-utils --fix-missing
Это предотвратит кеширование изображения с устаревшими (или несоответствующими, если вы предпочитаете этот термин) подходящими данными.