私は単純な問題にぶつかったようで、何か本質的なものが欠けていると感じています。
私は私たちの会社にプライベートDockerイメージレジストリを持っています。これは私たちが開発するすべてのDockerイメージをホストします。
このレジストリはビルドプロセス中に絶えず更新され、新しいイメージが頻繁にプッシュされます。
現在、少数の画像と独自のレジストリーを備えたオープンシフトシステムを利用しています。
これら2つのシステム間で画像を同期するための最良の方法は何でしょうか?
例として、次のようにデプロイされたアプリがあります。
oc new-app myregistry.mydomain.edu/binbase/minix
これはうまく実行されています。
このデプロイメントを最新の変更で更新したいと思います。このために、次のことを行います。
oc import-image minix
タグスペック作成プルスペックイメージ最新23時間前myregistry.mydomain.edu/binbase/minix:latestf6646382cfa32da291e8380421ea656110090256cd195746a5be2fcf61e4edf1
これは正しい画像であり、現在実行中です
oc deploy minix --latest
ただし、これにより、新しく更新されたイメージではなく、現在のイメージがデプロイされます。
なぜこれ、または私たちが間違っているのか、何か考えはありますか?
私がやりたいのは、最新のイメージを再デプロイすることだけです。
敬具
Myregistry.mydomain.eduの外部レジストリを利用しているため、ソフトウェアの更新は現在自動的に更新されず、クラウドシステムにプッシュされません。
システムの内部イメージを更新するには、次のコマンドを使用してください
oc import-image <NAME OF STREAM>
これを機能させるには、PullPollicyを使用してデプロイメント構成を構成する必要があります '常に'
oc edit dc <NAME OF STREAM>
検索する必要のあるタグは次のとおりです。
imagePullPolicy:常に