Как использовать .gitlab-ci.yml на gitlab.com для сборки из Dockerfile и копирования артефакта из Dockerfile в публичный каталог GitLab? - PullRequest
1 голос
/ 26 июня 2019

Хотя я могу успешно написать .gitlab-ci.yml в gitlab.com, что передает мои artifact в public/,

image: ruby:2.3

pages:
  script:
  - bundle install
  - bundle exec jekyll build -d public
  artifacts:
    paths:
    - public

Я бы хотел .gitlab-ci.yml (aконтейнер (# 1), основанный на образе докера (# 2)), чтобы вместо этого использовать Dockerfile для создания другого изображения (# 3) для создания artifact и, опять же, передать artifact из # 3 вcontainer#1/public/ так что он общедоступен в Интернете.

# Dockerfile
FROM ruby:2.3
...

Обоснование этого заключается в том, что я могу поделиться репо с коллегой, который разбирается в Dockerfiles, но не заинтересован в использовании GitLab или .gitlab-ci.yml.Поэтому я хочу, чтобы .gitlab-ci.yml использовал Dockerfile для своих целей, и мой коллега может использовать Dockerfile любым удобным для них способом - Dockerfile - это общий воспроизводимый способ создания artifact.

Кажется, я могу создавать образы Docker в GitLab CI / CD , но я не уверен, что смогу сделать это на gitlab.com, а не на GitLab с собственным хостом.Это позволит мне затем отправить изображение в реестр и использовать изображение из реестра на более позднем этапе (включая artifact).Хотя я не уверен, как мне его извлечь?

docker build -t myimagename . не работает в GitLab CI / CD на gitlab.com (если я не добавлю services к .gitlab-ci.yml?).Даже если это произойдет, как мне извлечь artifact из myimagename контейнера в GitLab CI / CD «контейнер»?

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