機能 #444
完了各種 Docker ホストに Harbor のキャッシュを利用させる
100%
説明
#98 でキャッシュプロキシを立てたので、諸々の image を全部ここに集約する。
外部への通信が減って高速化が期待できるのはもちろん、定期的な pull ができる普通のレジストリとしても使えるので upstream が消えた場合の備えにもなる。
nop_thread さんが4ヶ月前に更新
残る作業は既存の docker コンテナ群を proxy cache から取ってくるようにする作業で、2つの選択肢がある。
- compose.yaml 等のイメージ名をキャッシュサーバを参照するよう書き換える。または、
- Docker と docker compose を使っているところを Podman と podman-compose などに移行し、 Podman の設定で透過的にキャッシュサーバを使わせる。
個人的には後者に挑戦してみたいところだが、失敗しづらいのは前者だろうと思う。
少し podman-compose まわりも調べてみるべきか。
例のごとく Debian の stable だとバージョンが古めであることも含めて確認する必要がある。
nop_thread さんが4ヶ月前に更新
どうせ podman にするなら rootless あるいは daemonless にしたい。
ホスト側は ansible で管理しているからユーザを作るのも簡単だ。
nop_thread さんが4ヶ月前に更新 · 編集済み
Ryot を podman-compose で動かそうとしたが、普通に無理だった。
Postgres への connection pool の作成に Ryot が失敗していそうなログが出ていたのと、compose.yaml で internal なネットワークをひとつとデフォルトネットワークを明示してひとつ作っているという暗黙のデフォルトでない構成なので、引っ掛かっているとするとネットワークまわりが最初に疑われるのだが、詳しいことはわからない。
podman-compose ではなく docker-compose (v1.x) と podman daemon を使ってみても同じような結果になった。
何もわからん。
nop_thread さんが4ヶ月前に更新
linkding は単体のコンテナしか動かしていないので普通に移行できた。
できたが、どうせ volume の指定くらいしかしないのだからそもそも compose.yaml を使うのをやめるべきな気はしている。
しかし後から必要なコンテナが増えたりすると面倒なのでひとまずは現状のままで……
nop_thread さんが4ヶ月前に更新
NetBox も Docker でやっているが、コンテナ数が多いのと、ネットワーク構成は暗黙ながら何かで躓くとネットワーク管理に支障を来しかねないので、移行は保留しておく。
(今のところ podman-compose をそこまで信用できない。)
nop_thread さんが4ヶ月前に更新
Harbor もいろいろ安心できない状況だが (たとえば LXC コンテナ再起動後にうまく動いていないように見えるとか)、結構コンテナ数が多いのと、そもそもこれを Podman にしてもキャッシュサーバを自分自身にするわけにもいかず移行で得るものがあまりなさそうなので、これも移行しない。
nop_thread さんが4ヶ月前に更新 · 編集済み
- ステータス を 新規 から 終了 に変更
Podman に移行できるサービスがもうないので終了。
結局 linkding (と Woodpecker CI の agent) しか移行していない。
nop_thread さんが2日前に更新
- 関連している 機能 #576: Docker レジストリの pull-through cache proxy を Harbor 以外へ移行する を追加