我正在尝试为Spring Boot微服务部署实现CI / CD管道。我打算在这里使用Kubernetes和Jenkins。我有一台本地服务器,用于我的SVN代码存储库。我正在使用SVN进行版本控制。为了保持映像注册表,我计划使用Dockerhub。我正在尝试实现对SVN代码存储库的提交,然后Jenkins管道作业需要触发,编译,测试,构建,打包,构建Docker映像,推送到Dockerhub并部署到Kubernetes集群中。
这里我的困惑是:
1。。当我添加SVN Dockerhub的URL和凭据时,是否可以将所有这些都添加到我的Jenkinsfile中?
令人怀疑的原因是,当我浏览实施示例时,YouTube视频显示正在管道创建中检查SCM选项并在其中粘贴代码存储库URL(GITHUB URL)。因此,我对于是否需要这样做感到完全困惑,或者是否可以在Jenkinsfile中添加Docker Hub和svn url?
2。。如果无法添加Jenkinsfile,那么我可以在其中添加Dockerhub URL和凭据来进行图像推送和拉出过程吗?
答案 0 :(得分:2)
当我添加SVN Dockerhub的URL和凭据时,是否可以将所有这些都添加到我的Jenkinsfile中?
可能吗?是。是建议吗?不会。如果没有其他原因,这会使轮换凭证变得困难得多,因为每个项目中的每个人都需要更新 Jenkinsfile
。
您将要利用Jenkins的credential store,然后在Jenkinsfile
中仅消费这些凭证。利用Jenkins中的pipeline library,创建一个新的“步骤”来与dockerhub和kubernetes进行凭证绑定和交互,您也可能会取得成功。
自定义步骤的优点在于,它从实际项目中抽象出了进行Jenkins凭证查找,错误处理等所有工作的复杂性。这样做的缺点是它增加了不透明性,这意味着必须确保项目知道该步骤的文档在哪里找到,并且该步骤需要足够可配置以在所有情况下使用。 >