postgresql-client-15のDebian Bullseyeインストールエラー(libreadline7(> = 6.0)によって異なりますが、インストールできません)

postgresql-client-15のDebian Bullseyeインストールエラー(libreadline7(> = 6.0)によって異なりますが、インストールできません)

私はRuby 3.2.2 Debian 11ブルスアイの画像をデフォルトの画像として使用するDockerコンテナの中にいます(参照:https://github.com/docker-library/ruby/blob/ed1be47a38a7a24a0aa03c450549afcb592f02a8/3.2/bullseye/Dockerfile)

postgres-client-15以下を使用してパッケージをインストールしたいと思います。

FROM ruby:3.2.2-bullseye

# ...

RUN curl https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor | tee /etc/apt/trusted.gpg.d/apt.postgresql.org.gpg >/dev/null
RUN echo "deb http://apt.postgresql.org/pub/repos/apt/ buster-pgdg main 15" >> /etc/apt/sources.list.d/postgresql.list

#...

RUN apt-get update && apt-get install -y apt-transport-https ca-certificates \
    && apt-key adv --no-tty --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 561F9B9CAC40B2F7 \
    && echo deb https://oss-binaries.phusionpassenger.com/apt/passenger bullseye main > /etc/apt/sources.list.d/passenger.list \
    && apt-get update \
    && apt-get install -y \
      autoconf \
      build-essential \
      cron \
      curl \
      ghostscript \
      git \
      less \
      libjemalloc2 \
      libpq-dev \
      libreadline-dev \
      libsqlite3-dev sqlite3 \
      libssl-dev \
      nginx libnginx-mod-http-passenger \
      nodejs \
      postgresql-client-15 \
      redis-server \
      vim \
      xfonts-base \
      xfonts-75dpi \
      xmlsec1 \
      yarn \
    && rm -rf /var/lib/apt/lists/*

このエラーメッセージで失敗します

The following packages have unmet dependencies:
 postgresql-client-15 : Depends: libreadline7 (>= 6.0) but it is not installable

コマンドを手動で実行すると、パッケージがインストールされているlibreadline8ことがわかります。

root@42da1438f1d6:/# dpkg -l | grep libread
ii  libreadline-dev:amd64              8.1-1                          amd64        GNU readline and history libraries, development files
ii  libreadline8:amd64                 8.1-1                          amd64        GNU readline and history libraries, run-time libraries

postgresql-client-15が依存しているようですが、libreadline7Debian 11 Bullseyeではこのパッケージを使用できません。この問題を解決する方法を知っていますか?

Docker イメージ自体をアップグレードすることは気に入らないが、Debian Bookworm では同様のエラーが発生します (一部のパッケージはまだ Bookworm で使用できないため、他のエラーの中で)。

答え1

問題は、Buster PostgreSQLリポジトリを使用すると発生します。そこでpostgresql-client-15利用可能なパッケージはlibreadline7

Bookwormにアップグレードしたいと思っているので、次のことをお勧めします。postgresql-client-15Debian で利用可能なパッケージ、PosgreSQLリポジトリを使用せずに:

FROM ruby:3.2.2-bookworm

RUN apt-get update && apt-get install -y --no-install-recommends postgresql-client-15

関連情報