2016-11-11 8 views
0

Конкорс сборки косяк и развертывание в докер, я получаю эту ошибку:Конкорс косяк ставить докер изображение местного репо, а не непросроченный хранилище/тег

invalid argument " http://10.250.249.243:5000/frontend-srv-img:latest " for t: Error parsing reference: " http://10.250.249.243:5000/frontend-srv-img:latest " is not a valid repository/tag See 'docker build --help'.

Я пытаюсь построить внешний интерфейс исходный репозиторий в задача, в результате чего dist: frontend-dist.

Тогда я хочу использовать этот dist в «put» в моем локальном реестре докеров, поэтому я предоставляю «put» с папкой dist и файлом пути докеров. Примечание: файл dist и docker поступает из разных репозиториев/филиалов.

--- 
    #Git repo containing docker-template and build scripts: 
resources: 
- name: devops-repo 
    type: git 
    source: 
    uri: [email protected]:myorg/client-devops.git 
    branch: dev 
    private_key: {{private-key}} 

#Git repo containing docker-template and build scripts: 
- name: client-repo 
    type: git 
    source: 
    uri: [email protected]:myorg/client-devops.git 
    branch: frontend 
    private_key: {{private-key}} 

#Docker-image containing the built source: 
- name: frontend-server-image 
    type: docker-image 
    source: 
    repository: http://10.250.249.243:5000/frontend-srv-img 
    insecure_registries: ["http://10.250.249.243:5000"] 


jobs: 
- name: job-frontend 
    public: true 
    plan: 
    - aggregate: 
    - get: devops-repo 
     trigger: true 
    - get: client-repo 
     trigger: true 
    - task: Build frontend using grunt 
    file: devops-repo/build-frontend.yml 
    - put: frontend-server-image 
    params: 
     build: frontend-dist 
     dockerfile: devops-repo/frontend-server/Dockerfile 

наращивание frontend.yml

--- 
platform: linux 

image_resource: 
    type: docker-image 
    source: 
    repository: node 
    tag: 'latest' 
inputs: 
- name: client-repo 
outputs: 
- name: frontend-dist 
run: 
    path: sh 
    args: 
    - -exc 
    - | 
    ls -lah 
    cd client-repo 
# npm install -g grunt-cli 
# npm install -q 
# grunt pipeline 
    mkdir dist 
    touch dist/test123 
    mv -f dist ../frontend-dist 
    cd .. 
    ls -lah 
+0

Можете ли вы 'fly int ercept' в контейнер, выполняющий 'put', и попробуйте запустить его вручную? Полагает, что мои наивные глаза - проблема Докера, а не Концертная. –

+0

Это рабочий, делающий ставку? –

+1

Это так, но если вы используете комбинацию 'fly container' и' fly intercept', вы сможете установить SSH-сеанс в сам контейнер (а не только VM-хозяина), который выполняет 'put'. Таким образом, вы можете видеть состояние контейнера и выталкивать его, чтобы отлаживать дальше. –

ответ

1

Я думаю, ваша проблема заключается в хранилище вы указали - не включают http:// префикс:

- name: frontend-server-image 
    type: docker-image 
    source: 
    repository: 10.250.249.243:5000/frontend-srv-img 
    insecure_registries: ["http://10.250.249.243:5000"] 

Похожая вещь есть (но у нас есть сертификат SSL, поэтому не нужно указывать опцию insecure_registries.)