Сохранение сборок докера в Gitlab CI с помощью docker-compose - PullRequest
0 голосов
/ 04 февраля 2019

У меня есть репозиторий, который состоит из трех частей: веб-интерфейс, администратор и сервер.Каждый содержит свой собственный Dockerfile.

После создания образа я хотел добавить тест для admin .Мои тесты проходят, но занимают много времени, потому что он тянет базовый образ и строит все с нуля на каждом этапе (например, 8 минут на этап).Это мой .gitlab-ci.yml

image: tmaier/docker-compose

services:
  - docker:dind

stages:
  - build
  - test

build:
  stage: build
  script:
    - docker login -u $CI_DEPLOY_USER -p $CI_DEPLOY_PASSWORD $CI_REGISTRY
    - docker-compose build
    - docker-compose push

test:admin:
  stage: test
  script:
    - docker-compose -f docker-compose.yml -f docker-compose.test.yml up admin

Я не совсем уверен, нужно ли мне проталкивать / извлекать изображения между этапами или я должен делать это с артефактами / кэшем / чем-либо еще.Как я понял, мне нужно только нажать / вытащить, если я хочу развернуть свои образы на другом сервере.Но также я добавил docker-compose push, который запускается, но Gitlab не показывает мне никаких изображений в моем реестре.

Я много исследовал это, но большинство примеров кода, которые я нашел, были только об одном докереконтейнер, и они не использовали docker-compose.

Есть идеи?:)

1 Ответ

0 голосов
/ 03 мая 2019

Марк, не могли бы вы показать файлы docker-compose.yml docker-compose.test.yml?Может быть, вы пытаетесь толкать и тянуть разные изображения.Кстати, попробуйте разместить Docker логин в before_script раздел, чтобы он работал на всех заданиях.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...