【问题标题】:Building privately-hosted base image [drone.io]构建私有托管的基础镜像 [drone.io]
【发布时间】:2018-01-18 17:02:43
【问题描述】:

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

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

FROM: my_private_repo.com/my_base_image:latest

但我不确定如何正确授予 Drone 访问此 repo 的权限。

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

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 ]

【问题讨论】:

    标签: docker drone.io


    【解决方案1】:

    你可以试试:

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

    2. 使用docker 映像,此存储库需要打开可信标志才能挂载主机卷

    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 .
    

    【讨论】:

      猜你喜欢
      • 2023-01-28
      • 2014-09-16
      • 1970-01-01
      • 2019-12-19
      • 1970-01-01
      • 2016-11-11
      • 1970-01-01
      • 2017-09-29
      • 2017-12-31
      相关资源
      最近更新 更多