我已经使用公共GitHub回购作为构建上下文来测试Kaniko。我可以给Kaniko一个git,我想用它在基本图像的基础上构建我的快照码头图像,在Dockerfile构建文件中给出。就像这个"kaniko-restapi.yaml“:
apiVersion: v1
kind: Pod
metadata:
name: kaniko
spec:
containers:
- name: kaniko
image: gcr.io/kaniko-project/executor:latest
args: [ "--context=git://github.com/gituserxyz/kaniko-test",
"--context-sub-path=kaniko-setup/restapi/docker/",
"--dockerfile=Dockerfile",
"--destination=dockeruserxyz/restapi-restassured:1" ]
volumeMounts:
- name: kaniko-secret
mountPath: "/kaniko/.docker"
restartPolicy: Never
volumes:
- name: kaniko-secret
secret:
secretName: dockercred
items:
- key: .dockerconfigjson
path: config.json有了这个Kaniko图像(pod)的定义,我的Dockerfile可以与Kaniko一起使用,就像我可以用它来处理Docker或docker-compose一样。
驻留在我的maven项目中的Dockerfile,在这个阶段被推到git,看起来如下所示:
FROM openjdk:11
COPY ./config/my-config.properies /my-config.properties
COPY ./config/my-config-2.properies /my-config-2.properties
RUN curl -o restassured.451.jar https://mvnrepository.com/artifact/io.rest-assured/rest-assured/4.5.1
ENTRYPOINT ["java","-jar","/app.jar"](为了说明.)
在这里,这些属性(config)文件是Kaniko从我的项目的git中获取的。
问题:我可以在Kubernetes上使用私有git存储库吗?如何使用私有回购定义和/或访问令牌。
我试着找出这种Kaniko用法的例子,到目前为止,我认为这种使用Kaniko的方式可能根本不可能,用Kaniko和私有git作为构建上下文。对我来说,这似乎是非常基本的需求和用例。
编辑:

好的。据我所知,Kaniko最初是谷歌的一个项目。但我也知道Kaniko目前是一个开源项目??
发布于 2022-05-20 20:46:13
它更像是基本的git用法: git://token@private-git.com/user/repo/etc/repo.git
这里也提到了:https://github.com/GoogleContainerTools/kaniko/blob/main/README.md#using-private-git-repository
但并不是所有的git回购都有效。现在,我只是把所有的包装在一个球,并附加在pv。很多麻烦。
https://stackoverflow.com/questions/71845902
复制相似问题