赞
踩
1.在jenkins里面安装插件gitee
2.在码云中创建一个仓库
jenkinstest
3.在idea创建springboot项目,项目名称为jenkinstest
pom文件
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.wu</groupId> <artifactId>jenkinstest</artifactId> <version>0.0.1-SNAPSHOT</version> <name>jenkinstest</name> <description>jenkinstest</description> <packaging>jar</packaging> <properties> <java.version>1.8</java.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <spring-boot.version>2.3.12.RELEASE</spring-boot.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> <exclusions> <exclusion> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> </exclusion> </exclusions> </dependency> </dependencies> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>${spring-boot.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>2.3.12.RELEASE</version><!-- 自己的SpingBoot版本 --> <configuration> <!-- 自己的启动类地址 --> <mainClass>com.wu.JenkinstestApplication</mainClass> </configuration> <executions> <execution> <id>repackage</id> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin> </plugins> </build> </project>
controller
package com.wu.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class TestController {
@GetMapping("/test")
public String get(){
return "test";
}
}
配置文件
server:
port: 5005
```ockerfile
```java
FROM java:8
VOLUME /tmp
ADD jenkinstest-0.0.1-SNAPSHOT.jar jenkinstest.jar
#暴露端口号
EXPOSE ${SERVER_PORT}
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/jenkinstest.jar"]
4.将代码上传gitee上面
5.在jenkins下载插件ssh,在系统管理-系统配置中配置远程服务器ssh
测试通过,保存
5.jenkins拉取
输入名称
clean package
高级勾选console,可以看到日志
脚本
#!/bin/bash echo "上传远程服务器成功" cd /docker/images/jenkinstest mv target/jenkinstest-0.0.1-SNAPSHOT.jar /docker/images/jenkinstest echo "jar包移动到同一个位置" docker stop jenkinstest || true echo "容器已经停止" docker rm jenkinstest || true echo "容器已经移除" docker rmi jenkinstest || true echo "镜像已经移除" docker build -t jenkinstest . echo "镜像已经制作完成" docker run -d -p 5005:5005 --name jenkinstest jenkinstest:latest echo "容器已经启动"
访问
技巧:jenkins通过git拉取代码和打包,都在/var/jenkins_home/workspace文件夹下,可以去看打包的文件是否正确,以便于配置远程文件同步
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。