web-dev-qa-db-ja.com

Docker:特定のビルドIDを取得するにはどうすればよいですか?

最新だけでなく、常に特定のバージョンをプルしたいと思います。

ランダムな例: https://registry.hub.docker.com/u/aespinosa/jenkins/builds_history/9511/

監査したバージョンのみをデプロイしたいので、これを行っています。これは現在可能ですか?それとも私はそれらをフォークして自分で作ることを余儀なくされていますか?

18
Sam

私のやり方は、各ビルドにタグを付けることです

docker build -t $NAMESPACE/$APP_NAME:$BUILD_SHA1 .
docker tag $NAMESPACE/$APP_NAME:$SHA1  $DOCKER_REGISTRY/$NAMESPACE/$APP_NAME:$SHA1
docker Push $DOCKER_REGISTRY/$NAMESPACE/$APP_NAME:$SHA1

次に、特定のタグをプルします

docker pull $DOCKER_REGISTRY/$NAMESPACE/$APP_NAME:$SHA1
3
fabrizioM

次の構文を使用して、特定の ダイジェストによる画像 をプルできます。

docker pull ubuntu@sha256:45b23dee08af5e43a7fea6c4cf9c25ccf269ee113168c19722f87876677c5cb2

ハッシュを見つける必要がある場合は、画像をプッシュ/プルするときに出力されます。一部の自動ビルドは、最後にそれを出力します。 docker inspectでハッシュを探してみましたが、そこに表示されなかったため、ハッシュを表示するには、画像を削除してもう一度プルする必要があります。

29
Joel B