1.新建一个springboot项目
1.pom配置文件
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.5.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.5.7</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
2.application.yml
server:
port: 8887
3.主要代码
@RestController
@RequestMapping("/demo")
@Slf4j
public class HelloController {
@GetMapping("/sayHi")
public ResponseEntity<String> sayHi(@RequestParam(value = "name")String name){
return ResponseEntity.ok("Hi:"+name);
}
@PostMapping("/hello")
public HttpResult<String> hello(@RequestBody Map<String,Object> map){
Object name = map.get("name");
if(Objects.isNull(name)){
return HttpResult.failed("name不存在");
}
log.info("get json param: name: {}", name);
return HttpResult.succeed("www");
}
}
2.生成jar包,并上传到服务器上
3.编写Dockerfile
FROM java:8
WORKDIR /opt/deployments
MAINTAINER author <www.zy@qq.com>
COPY springbootDemo.jar /opt/deployments/app.jar
EXPOSE 8887
CMD ["java","-jar","/opt/deployments/app.jar"]
说明: 1.java8作为基础运行环境 2.定义工作目录为/opt/deploymets 3.定义维护作者 4.把当前jar拷贝到工作目录中,供后续启动 5.暴露端口8887 6.执行启动命令 jave -jar /opt/deployments/app.jar
4.生成镜像
docker build -t zy/app .
注意:后面的 . 不能省略
5.运行镜像即可
docker run -p 8887:8887 zy/app:latest