問題タブ [docker-in-docker]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
docker - gitlab-ci から docker コマンドを実行する
私はこの gitlab-ci ファイルを持っています:
何らかの理由で、docker サービスの docker が docker のバイナリを見つけられません ( docker versionコマンドの 16 行目):
テストのために docker を実行する必要があるため、maven と docker バイナリの両方を含むイメージがある場合、または自分の独自の docker イメージ。
それはすべて1つの段階である必要があり、2つの段階に分割することはできません(または、少なくとも1つの段階でmavenでコンパイルし、別の段階でdockerイメージを使用してテストを実行する方法がわかりません)
ありがとうございました!
docker - マルチステージ docker ビルドが「COPY --from=builder ...」でスタックするのはなぜですか?
コンテキストは次のとおりです。
- ジェンキンス
- Kubernetes プラグイン
- Docker-in-Docker/dind コンテナ
- マルチステージ Dockerfile
フローは次のようになります。
- プルビルダー
docker pull repo/image:builder
- ビルドビルダー
DOCKER_BUILDKIT=1 docker build . --build-arg BUILDKIT_INLINE_CACHE=1 --target builder --cache-from repo/image:builder --tag repo/image:builder
- プッシュビルダー
docker push repo/image:builder
- プル画像
docker pull repo/image:tag
- ビルドイメージ
DOCKER_BUILDKIT=1 docker build . --build-arg BUILDKIT_INLINE_CACHE=1 --cache-from repo/image:builder --cache-from repo/image:tag --tag repo/image:tag
- プッシュ画像
docker push repo/image:tag
Dockerfile:
ドッカービルドでCOPY --from=builder --chown=nginx:nginx /app/frontend/built /project/web/public
、エラーなしで永遠にスタックします(30〜40分後、手動で停止します)。
編集: 最初の実行時に、イメージがまだレジストリに存在しない場合、ビルダーのキャッシュとCOPY --from=builder
動作は期待どおりです。2回目以降のビルドからのみ、スタックしますCOPY --from=builder