使用docker-compose和代码签出进行CircleCI 2.0测试

时间:2017-07-06 15:23:01

标签: docker-compose circleci

这是我的circle.yml:

version: 2
jobs:
  build:
    working_directory: /app
    docker:
      - image: docker:stable-git
  steps:
    - checkout
    - setup_remote_docker
    - run:
        name: Install dependencies
        command: |
          apk add --no-cache py-pip bash
          pip install docker-compose
    - run:
        name: Start service containers and run tests
        command: |
          docker-compose -f docker-compose.test.yml up -d db es redis
          docker-compose run web bash -c "cd myDir && ./manage.py test"

这样可以正常工作,它会调出我的服务容器(db,es,redis),并为我的Web容器构建一个新映像。但是,我的工作代码不在新构建的图像中(所以" cd myDir"总是失败)。

我认为我的Dockerfile中的以下几行应该在构建时使我的代码可用,但它看起来并不像那样:

ENV APPLICATION_ROOT /app/
RUN mkdir -p $APPLICATION_ROOT
WORKDIR $APPLICATION_ROOT
ADD . $APPLICATION_ROOT

我做错了什么,如何在我的测试容器中提供我的代码?

谢谢,

1 个答案:

答案 0 :(得分:0)

使用<h1>Main Section</h1>,你的Dockerfile看起来应该是这样的。

  

FROM image

     

COPY。 /选择/应用

     

WORKDIR&#34; / opt / app&#34;

     

(更多命令)

     

入口点