有没有办法在 Gitlab 共享运行器中运行 sbt-native-packager?

问题描述 投票:1回答:1

我一直在尝试在Gitlab共享运行器中构建docker镜像。我正在使用 image: "hseeberger/scala-sbt:11.0.6_1.3.10_2.11.12" 我在本地用 sbt-native-packager 构建 docker 镜像,这让我觉得我需要使用 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
docker gitlab sbt gitlab-ci gitlab-ci-runner
1个回答
0
投票

其实下面的方法对我来说是可行的,虽然每次都要在运行器中安装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
© www.soinside.com 2019 - 2024. All rights reserved.