2017-04-23 13 views
0

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は「外部」ですか?あなたがドッキングウィンドウ使用することによって、あなたがそれらをコピーすることができ、コンテナの中に生成されたファイルを取得したい場合は

答えて

0

docker cp nightwatch:/opt/project/build/core/your_file <your_local_path>

を基本的にはパターンがある:

docker cp <source> <target>

ソースの場合/ターゲットはコンテナですので、使用する必要があります:

+0

ソースとターゲットがスワップされていますか? – user3142695

+0

どちらの方法でも使用できます。ソース/ターゲットはどこにあるかによって異なります。 – calbertts

+0

これは機能しません。私はより良い理解のために投稿するように更新しました。 – user3142695

関連する問題