具有 github 上下文的 Kubernetes 上的 Kaniko
Kaniko on Kubernetes with github context
有这个例子如何使用 git 和 kaniko 图像构建:
apiVersion: v1
kind: Pod
metadata:
name: kaniko
spec:
# automountServiceAccountToken: false
containers:
- name: kaniko
image: gcr.io/kaniko-project/executor:latest
args: [ "--dockerfile=kaniko/dockerfile/Dockerfile",
"--context=git://github.com/scriptcamp/kubernetes-kaniko",`enter code here`
我尝试将我的 git 项目与 docker 文件一起使用,文件不在 git 项目的根目录中,并且还指定了 git 分支。
如果 Kaniko 设置可以包含在“真实”项目中,将会有所帮助。不可能??
编辑:
此处:--docker文件=kaniko/dockerfile/Dockerfile
Kaniko docker 构建可以找到Dockerfile。但是构建似乎无法找到同一目录(或以下)中的其他文件,Dockerfile 构建试图复制到正在构建的图像。
如果 Dockerfile 和 Dockerfile 指向的其他文件都位于 gitbub 存储库的根目录中,则此方法有效。
编辑 2:
好的。如果 [kube/restapi/docker/] docker-compose 使用的 Dockerfile 如下所示:
FROM openjdk:11
ARG JAR_FILE=./app.jar
COPY ${JAR_FILE} app.jar
ENTRYPOINT ["java","-jar","/app.jar"]
然后,如果我想在 Kubernetes 上使用 Kaniko 构建这个 Dockerfile,我必须从我的项目根目录(和 github 存储库)添加路径,如下所示:
FROM openjdk:11
COPY kube/restapi/docker/app.jar app.jar
ENTRYPOINT ["java","-jar","/app.jar"]
-- 我很高兴能够在 docker-compose 设置和 Kubernetes 上的 Kaniko 中使用相同的 Dockerfile。
希望有人能找到“解决”这个问题的方法。
https://github.com/GoogleContainerTools/kaniko/issues/1064
spec.containers.args:
- give "--context=git://github.com/...(git repo 的根目录)
- give "--context-sub-path=path/to/setup/folder/"(从项目的根目录开始/ git集线器回购根)
- 给出“--dockerfile=Dockerfile”(位于context-sub-path)
- 给出“--destination=...”-可选
有这个例子如何使用 git 和 kaniko 图像构建:
apiVersion: v1
kind: Pod
metadata:
name: kaniko
spec:
# automountServiceAccountToken: false
containers:
- name: kaniko
image: gcr.io/kaniko-project/executor:latest
args: [ "--dockerfile=kaniko/dockerfile/Dockerfile",
"--context=git://github.com/scriptcamp/kubernetes-kaniko",`enter code here`
我尝试将我的 git 项目与 docker 文件一起使用,文件不在 git 项目的根目录中,并且还指定了 git 分支。
如果 Kaniko 设置可以包含在“真实”项目中,将会有所帮助。不可能??
编辑:
此处:--docker文件=kaniko/dockerfile/Dockerfile Kaniko docker 构建可以找到Dockerfile。但是构建似乎无法找到同一目录(或以下)中的其他文件,Dockerfile 构建试图复制到正在构建的图像。
如果 Dockerfile 和 Dockerfile 指向的其他文件都位于 gitbub 存储库的根目录中,则此方法有效。
编辑 2:
好的。如果 [kube/restapi/docker/] docker-compose 使用的 Dockerfile 如下所示:
FROM openjdk:11
ARG JAR_FILE=./app.jar
COPY ${JAR_FILE} app.jar
ENTRYPOINT ["java","-jar","/app.jar"]
然后,如果我想在 Kubernetes 上使用 Kaniko 构建这个 Dockerfile,我必须从我的项目根目录(和 github 存储库)添加路径,如下所示:
FROM openjdk:11
COPY kube/restapi/docker/app.jar app.jar
ENTRYPOINT ["java","-jar","/app.jar"]
-- 我很高兴能够在 docker-compose 设置和 Kubernetes 上的 Kaniko 中使用相同的 Dockerfile。
希望有人能找到“解决”这个问题的方法。
https://github.com/GoogleContainerTools/kaniko/issues/1064
spec.containers.args:
- give "--context=git://github.com/...(git repo 的根目录)
- give "--context-sub-path=path/to/setup/folder/"(从项目的根目录开始/ git集线器回购根)
- 给出“--dockerfile=Dockerfile”(位于context-sub-path)
- 给出“--destination=...”-可选