nodejsアプリケーションでドッキングコンテナを構築しています。これはmeteorJSからビルドされます。ビルドでは、シェルランナーが使用されます( `meteor build/opt/project/build/core --directory)。これはすべてgitlab CIで行われます。現在のドッカーコンテナから別のコンテナにファイルをコピーする方法
build:
stage: build
tags:
- deploy
before_script:
- docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
- meteor npm install
- meteor build /opt/project/build/core --directory
script:
- cd /opt/project/build/core/bundle
- docker build -t $CI_REGISTRY_IMAGE:latest .
したがって、アプリケーションのファイルは/opt/project/build/core
になりました。今、私は別のドッキングウィンドウのイメージにそれらのファイルをコピーする(プロジェクト-E2E:最新)
私は
docker cp /opt/project/build/core/bundle project-e2e:latest/opt/project/build/core
を実行しようとしました。しかし、これは私にエラー
Error response from daemon: No such container: project-e2e
を与えるしかし、私は参照してください。コンテナが実行中です。
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a238132e37a2 project-e2e:latest "/bin/bash" 14 hours ago Up 14 hours clever_kirch
多分問題は、シェルランナードッカーiからコピーしようとしていることですターゲットプロジェクト-e2eは「外部」ですか?あなたがドッキングウィンドウ使用することによって、あなたがそれらをコピーすることができ、コンテナの中に生成されたファイルを取得したい場合は
ソースとターゲットがスワップされていますか? – user3142695
どちらの方法でも使用できます。ソース/ターゲットはどこにあるかによって異なります。 – calbertts
これは機能しません。私はより良い理解のために投稿するように更新しました。 – user3142695