Есть ли способ запустить sbt-native-packager в общем средстве выполнения Gitlab? - PullRequest
1 голос
/ 27 мая 2020

Я пытался создать docker образов в Gitlab shared runner. Я обычно создаю свое приложение, используя изображение image: "hseeberger/scala-sbt:11.0.6_1.3.10_2.11.12", и локально создаю образ docker с помощью sbt-native-packager, что заставило меня подумать, что мне нужно использовать службу DiD.

У меня сейчас проблема, из-за которой sbt-native-packager не может найти исполняемый файл docker и не может создать образ. Что мне здесь не хватает?

Мой сценарий выглядит следующим образом:

docker:
  stage: deploy
  image: "hseeberger/scala-sbt:11.0.6_1.3.10_2.11.12"
  services:
    - name: docker:dind
  script:
    - sbt docker:publishLocal
    - docker push registry.gitlab.com/groupName/moduleName

1 Ответ

0 голосов
/ 28 мая 2020

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

docker:image:
  stage: release
  image: "hseeberger/scala-sbt:11.0.6_1.3.10_2.11.12"
  before_script:
    - apt-get update
    - apt-get install sudo
    - apt-get install apt-transport-https ca-certificates curl software-properties-common -y
    - curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
    - sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
    - apt-get update
    - apt-get install docker-ce -y
    - sudo service docker start
    - docker login <to your account>

  script:
    - sbt docker:publishLocal
    - docker tag module:latest registry.gitlab.com/moduleGroup/module:0.1-SNAPSHOT
    - docker push registry.gitlab.com/moduleGroup/module
...