构建私有托管的基本映像[drone.io]

时间:2018-01-18 17:02:44

标签: docker drone drone.io

我正在尝试使用Drone和docker插件部署Web服务。由于存在大量依赖性,我的图像需要大约一个小时才能构建。 为了加快构建时间,我想在基本映像中放置一些我的服务依赖项(不会经常更改),并在部署时在这个基础之上构建我的实际代码(python烧瓶应用程序)

我将基本映像托管在私有存储库中,我的Dockerfile中包含以下行:

FROM: my_private_repo.com/my_base_image:latest

但我不确定如何正确地让Drone访问此回购。

我目前在构建作业中遇到以下错误:

Step 1/11 : FROM:xxx pull access denied for xxx, repository does not exist or may require 'docker login' time="2018-01-17T13:13:33Z" level=fatal msg="exit status 1" 有没有办法让我配置docker插件自动登录。 对于上下文,我的YAML类似于:

push-feature: image: plugins/docker secrets: [docker_username, docker_password] repo: xxx/yyy/zzz registry: xxx tags: "feature" when: event: push branch: exclude: [ dev, master ]

1 个答案:

答案 0 :(得分:0)

您可以尝试:

  1. 在主机上执行docker login(如果您需要在所有代理主机服务器上的多台服务器上安装多个代理)

  2. 使用此代表需要打开信任标志的docker映像才能装入主机卷

  3. pipeline:
      build:
        image: docker
        volumes:
          - /var/run/docker.sock:/var/run/docker.sock your-private-registry.com:8080
        commands:
          - docker login -u $DOCKER_USERNAME -p $DOCKER_PASSWORD
          - docker build -t myorg/myimage .