前提:
1.已安装Harbor。
2.已安装Jenkins,已配置相关环境,如Maven、JDK等。
3.微服务项目已经推送到远程仓库(我这里是推送到了gitee)。
操作流程如下
1.新建任务


2.参数构建
点击spring-cloud-dev,接着进入配置





这时候可以看到构建参数如下

3.配置微服务
打开编译工具IDEA,项目结构如下,现只构建两个子服务cloud-zuul和cloud-admin

在项目根目录下放置Jenkinsfile文件,在子服务cloud-zuul和cloud-admin根目录下分别放置Dockerfile文件,文件内容如下:
cloud-zuul
FROM openjdk:8
ARG JAR_FILE
COPY ${
JAR_FILE} cloud-zuul.jar
EXPOSE 10006
ENTRYPOINT ["java","-jar","cloud-zuul.jar"]
cloud-admin
FROM openjdk:8
ARG JAR_FILE
COPY ${
JAR_FILE} cloud-admin.jar
# 挂载目录到主机
VOLUME ["/root/ghyProjectUpload/synthesiscloud"]
EXPOSE 10008
ENTRYPOINT ["java","-jar","cloud-admin.jar"]
注意:端口保持一致
Jenkinsfile
def project_url = "https://gitee.com/***/synthesis-cloud.git"
def gitlab_auth = "z***"
def tag = "latest"
def harbor_url = "192.168.*.*:9999"
def harbor_project_name = "sysnthesis-cloud-dev"
def imageName = "${project_name}:${tag}"
node {
def mvnHome
stage('pull') {
checkout([$class: 'GitSCM', branches: [[name: '*/master']], extensions: [],
userRemoteConfigs: [[credentialsId: "${gitlab_auth}", url: "${project_url}"]]]

本文详细介绍了如何在Jenkins中配置流水线脚本,实现从Gitee远程仓库拉取微服务代码,通过Maven构建并打包成Docker镜像,最终推送到Harbor私有仓库,包括设置构建参数、公共模块构建、镜像上传和远程部署的全过程。
12万+

被折叠的 条评论
为什么被折叠?



