Внутренняя /docker-сборка Веркера завершается неудачно с контекстным свойством

У меня есть проект, в котором я собираюсь создавать и публиковать более одного образа Docker с помощью wercker. Исходный код каждого из них находится в отдельных папках внутри проекта.

В качестве более простого примера я создал репозиторий, в котором вы можете воспроизвести эту проблему. Я использовал внутреннюю /docker-build веркера. В ссылке понятно есть свойство context context, но это, похоже, не дает эффекта: контекст все еще кажется корнем моего проекта.

Структура моей папки:

  • Корень:
    • Колба-приложение
      • app.py
      • requirements.txt
      • Dockerfile
    • wercker.yml

Мой файл wercker.yml:

box:
id: python:2.7-slim
ports:
- "5000"

build:
  steps:
    - internal/docker-build:
        dockerfile: flask-app/Dockerfile
        context: flask-app
        image-name: flask-app

Когда я бегу wercker build --pipeline build в корне проекта вывод:

--> No Docker host specified, checking: /var/run/docker.sock
--> Executing pipeline
--> Copying working directory to: /home/handris/Projects/wercker-context/.wercker/projects/wercker-context
--> Copied working directory: 0.00s
--> Running step: setup environment
Pulling from library/python: 2.7-slim
Digest: sha256:df3ba9998242864e650d62d158685c3c7af8c4f3ae1545bdc38780473b0b6c55
Status: Image is up to date for python:2.7-slim
--> Copying source to container
--> Running step: wercker-init
--> Running step: docker build
Step 1/7 : FROM python:3.6-alpine
Pulling from library/python: 3.6-alpine
Digest: sha256:4ae5142f052c4efd0bede8483f8ca43a73e8fcfce5dbf8f581967c2c9bac597b
Status: Image is up to date for python:3.6-alpine
 ---> 1837080c5e87
Step 2/7 : ENV PYTHONUNBUFFERED=1
 ---> Using cache
 ---> c4a790b9c973
Step 3/7 : WORKDIR /app
 ---> Using cache
 ---> 69ff1c48b2ac
Step 4/7 : COPY requirements.txt requirements.txt
--> Steps passed: 5.60s
--> Pipeline finished: 5.80s

Он не может скопировать мой файл require.txt, который находится в той же папке, что и мой Dockerfile.

Моя версия Wercker:

wercker version 1.0.1216 (Compiled at: 2018-05-01T13:14:48Z, Git commit: 426a99095ec0c95391620319833338afd1ccbc74)

Что мне не хватает? Как я могу сделать context свойство работать с internal/docker-build?

Изменить: я также попытался запустить сборку без dockerfile Свойство, вот так:

    - internal/docker-build:
      context: flask-app
      image-name: flask-app

В этом случае вывод:

--> No Docker host specified, checking: /var/run/docker.sock
--> Executing pipeline
--> Copying working directory to: /home/handris/Projects/wercker-context/.wercker/projects/wercker-context
--> Copied working directory: 0.00s
--> Running step: setup environment
Pulling from library/python: 2.7-slim
Digest: sha256:df3ba9998242864e650d62d158685c3c7af8c4f3ae1545bdc38780473b0b6c55
Status: Image is up to date for python:2.7-slim
--> Copying source to container
--> Running step: wercker-init
--> Running step: docker build
ERROR Failed to build image: Error response from daemon: Cannot locate specified Dockerfile: Dockerfile
--> Error response from daemon: Cannot locate specified Dockerfile: Dockerfile
--> Step failed: docker build Error response from daemon: Cannot locate specified Dockerfile: Dockerfile 0.28s
--> Pipeline failed: 3.40s
FATAL Step failed: docker build

И я также попытался указать только dockerfile собственность, как:

  steps:
    - internal/docker-build:
        dockerfile: flask-app/Dockerfile
        image-name: flask-app

В этом случае мой вывод на консоль такой же, как и в первом случае.

0 ответов

Другие вопросы по тегам