首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么Kaniko不能推进多级码头形象?

为什么Kaniko不能推进多级码头形象?
EN

Stack Overflow用户
提问于 2018-12-02 07:49:10
回答 1查看 1.7K关注 0票数 2

使用Kaniko在GitLab CI上构建以下Dockerfile,将导致错误error pushing image: failed to push to destination eu.gcr.io/stritzke-enterprises/eliah-speech-server:latest: Get https://eu.gcr.io/...: exit status 1

如果我从Dockerfile中删除第一个FROMRUNCOPY --from语句,就会按预期构建和推送Dockerfile。如果我在本地机器上使用Docker执行Kaniko构建,一切都按预期工作。我执行其他的Kaniko构建,并使用相同的GitLab服务帐户凭据在同一个GCE运行程序上进行推送。

基于GitLab CI的Kaniko构建有什么问题?

Dockerfile

代码语言:javascript
运行
复制
FROM alpine:latest as alpine

RUN apk add -U --no-cache ca-certificates

FROM scratch

COPY --from=alpine /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/

COPY binaries/speech-server /speech-server

EXPOSE 8080
ENTRYPOINT ["/speech-server"]
CMD ["serve", "-t", "$GOOGLE_ACCESS_TOKEN"]

GitLab CI构建阶段

代码语言:javascript
运行
复制
buildDockerImage:
  stage: buildImage
  dependencies:
    - build
  image:
    name: gcr.io/kaniko-project/executor:debug
    entrypoint: [""]
  variables:
    GOOGLE_APPLICATION_CREDENTIALS: /secret.json
  script:
    - echo "$GCR_SERVICE_ACCOUNT_KEY" > /secret.json
    - /kaniko/executor --context $CI_PROJECT_DIR --dockerfile $CI_PROJECT_DIR/Dockerfile --destination $DOCKER_IMAGE:latest -v debug
  only:
    - branches
  except:
    - master
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-05 18:21:15

作为tdensmore pointed out,这很可能是一个身份验证问题。

因此,对于每个来这里的人,下面的Dockerfile和Kaniko调用工作都很好。

代码语言:javascript
运行
复制
FROM ubuntu:latest as ubuntu

RUN echo "Foo" > /foo.txt

FROM ubuntu:latest

COPY --from=ubuntu /foo.txt /

CMD ["/bin/cat", "/foo.txt"]

Dockerfile可以通过运行

代码语言:javascript
运行
复制
docker run -v $(pwd):/workspace gcr.io/kaniko-project/executor:latest --context /workspace --no-push
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53578399

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档