在 Jenkins Pipeline 中配置 Dockerhub & SVN 代码仓库

Configuration of Dockerhub & SVN code repository in Jenkins Pipeline

我正在尝试为我的 Spring 引导微服务部署实施 CI/CD 管道。在这里,我计划为此使用 Kubernetes 和 Jenkins。我有一台本地服务器,用于我的 SVN 代码存储库。我正在使用 SVN 进行版本控制。而且为了保持图像注册,我计划使用 Dockerhub。我正在尝试在提交到我的 SVN 代码存储库时实施,然后 Jenkins 管道作业需要触发、编译、测试、构建、打包、构建 Docker 图像,推送到 Docker 集线器并部署进入 Kubernetes 集群。

这里我的困惑是:

1. 当我为 SVN Dockerhub 和凭据添加 URL 时,是否可以将这些全部添加到我的 Jenkinsfile 中?

怀疑的原因是,当我探索实施示例时,YouTube 视频显示在管道创建和粘贴代码存储库中检查 SCM 选项 URL (GITHUB URL)在那里面。所以我完全不知道我是否需要那样做,或者是否可以在 Jenkinsfile 中添加 Docker Hub 和 svn url?

2. 如果无法添加 Jenkinsfile,那么我可以在哪里添加我的 Dockerhub URL 和图像推送和拉取过程的凭据?

When I am adding the URL for SVN Dockerhub and credentials , Is possible to add these all in my Jenkinsfile ?

可能吗?是的。 可取吗?不。如果没有其他原因,那就是它使轮换凭证变得更加困难,因为每个项目都需要更新 every Jenkinsfile

您需要利用 credential store of Jenkins, and then only consume those credentials in the Jenkinsfile. You may also have good success making use of the pipeline library in Jenkins, to create a new "step" to do the credential binding and interaction with dockerhub and kubernetes

自定义步骤的优势在于,它从实际项目中抽象出执行 Jenkins 凭据查找、错误处理等所有内容的复杂性。 缺点 这样做会增加不透明度,这意味着必须确保项目知道在哪里可以找到该步骤的文档,并且该步骤需要足够可配置以在所有情况下使用.