Jenkinsfile⽂件模板
//git凭证ID
def git_auth = "d7e9e2**************5486f"
//git的url地址
def git_url = "gitee**********demo.git"
def tag = "0.0.1-SNAPSHOT"
node {
stage('拉取代码') {
checkout([$class: 'GitSCM', branches: [[name: "*/${branch}"]], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteCon }
sh "mvn clean install -st.skip=true"
}
stage('⼯程编译') {
//定义项⽬名称+镜像的版本号,对镜像名称进⾏拼接 def imageName = "${project_name}:${tag}"
scm文件
// 编译打包开始
sh "mvn clean package -st.skip=true dockerfile:build "
//对镜像打上标签
sh "docker tag ${imageName} ${imageName}"
}
stage('docker部署') {
/
/镜像名称
def imageName = "${project_name}:${tag}"
sh "docker rm -f ${project_name}"
// 创建⼀个容器映射的⽬标
sh "mkdir -p /opt/docker/${project_name}"
//容器加⼀层挂载⽬录
sh "docker run -di -v /opt/docker/${project_name}/opt:/opt --name ${project_name} -p ${host_port}:${container_port} ${imageName}"
}
stage('启动并监控⽇志') {
sh "docker logs -f ${project_name}"
}
}