Alpineでリポジトリを更新する方法

Alpineでリポジトリを更新する方法

"consul"パッケージの最新バージョンを入手しようとしています。

現在利用可能でインストールされているパッケージはバージョンですが、1.10.6最新バージョンは1.11.1

sudo apk list | grep consul
consul-template-openrc-0.27.2-r0 aarch64 {consul-template} (MPL-2.0)
consul-openrc-1.10.6-r0 aarch64 {consul} (MPL-2.0) [installed]
consul-template-0.27.2-r0 aarch64 {consul-template} (MPL-2.0)
consul-1.10.6-r0 aarch64 {consul} (MPL-2.0) [installed]

リポジトリを更新して追加しようとしましたが、2つのバージョン間に競合があると表示されます。

sudo apk upgrade
ul=1.11.1-r0OK: 1516 MiB in 190 packages

sudo apk update
fetch https://dl-cdn.alpinelinux.org/alpine/v3.15/main/aarch64/APKINDEX.tar.gz
fetch https://dl-cdn.alpinelinux.org/alpine/v3.15/community/aarch64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.15/main/aarch64/APKINDEX.tar.gz
v3.15.0-145-g123e3b9a98 [https://dl-cdn.alpinelinux.org/alpine/v3.15/main]
v3.15.0-152-gfc0468af85 [https://dl-cdn.alpinelinux.org/alpine/v3.15/community]
v3.15.0-145-g123e3b9a98 [http://dl-cdn.alpinelinux.org/alpine/v3.15/main]
OK: 15705 distinct packages available

sudo apk add consul=1.11.1-r0
ERROR: unable to select packages:
  consul-1.10.6-r0:
    breaks: world[consul=1.11.1-r0]

アルパインでこの問題を解決するための最良の方法は何ですか?

答え1

貼り付けたスクリーンショットによると、まだエッジストアを追加しておらず、v3.15で停止しています。

consul-1.11.1-r0Edgeリポジトリでのみ使用できます。

次の出力を比較してこれを確認できます。

https://pkgs.alpinelinux.org/packages?name=consul&branch=v3.15

そして:

https://pkgs.alpinelinux.org/packages?name=consul&branch=edge

これはAPKが正しく実行されていることを意味します。

Edgeリポジトリからconsulを追加するには、apkのpinning [1]機能を次のように使用できます。

# echo "@edge http://dl-cdn.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories

これで、コミュニティストアに特定のパッケージを追加できます。

# apk add consul@edge

お役に立てば幸いです。

.: フランシスコ

[1]https://wiki.alpinelinux.org/wiki/Package_management#Repository_pinning

関連情報