![e89806afce8476d0a0708619b0ed221a.png](https://i-blog.csdnimg.cn/blog_migrate/b3e7c599760fe42c2a354ca773f92abe.jpeg)
01 创建java项目
从spring官网快速开始找一份样例代码即可,代码样例如下:
1、指定pom父文件和依赖
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.2.RELEASE</version>
<relativePath/>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
指定打包插件,否则无法运行java -jar docker_example.jar
<build>
<finalName>docker_example</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
2、系统启动类
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class);
}
}
3、API服务类
@RestController
public class ExampleApi {
private Logger logger = LoggerFactory.getLogger(ExampleApi.class);
@RequestMapping("/example")
public String example(@RequestParam("demo") String example){
logger.info("服务器接收数据:{}",example);
return example;
}
}
做完了这些,我们先执行mvn package 打包
![1b9e47470774f4cd0928fce965e27fc0.png](https://i-blog.csdnimg.cn/blog_migrate/5fa3401e71e8530013bd119351ed3e7c.jpeg)
进入target文件夹执行 java -jar docker_example.jar看到如下图
![de1da5a2a550fe726a51fdb89d385bf9.png](https://i-blog.csdnimg.cn/blog_migrate/cfe61ef49edd93268ed69833528434f3.jpeg)
这个时候我们的java项目就完成了
02 开始处理dockeFile
dockerFile文件内容如下
# 环境
FROM openjdk:8-jdk-alpine
# 作者信息
MAINTAINER david xpDocker
# 拷贝jar
ADD target/docker_example.jar /example.jar
# 设置暴露的端口号
EXPOSE 8581
# 执行命令
ENTRYPOINT ["java","-jar","/example.jar"]
1、基于openJdk8构建镜像
2、指定作者信息
3、指定jar数据源
4、指定docker启动暴露端口
5、指定docker运行命令
03 打包构建镜像
1、安装docker,初学者就直接用yum 一键安装即可
yum install docker
2、打包
docker build -t docker_example:v1.0 .
![7d3be31b024a7929fad2b2d475109a12.png](https://i-blog.csdnimg.cn/blog_migrate/5f35b9a578ea0ba5f45a86a75cecae17.jpeg)
3、检查当前服务器镜像
Docker images
![ebfadbcf89714992f862637df4e3ff0e.png](https://i-blog.csdnimg.cn/blog_migrate/196c21d6db46bdd6c6b3a751c4f416c3.png)
4、启动docker镜像 并访问对应地址
docker run -it -p 8081:8080 docker_example:v1.0
![84348539e03c259cbbda58904db79bc8.png](https://i-blog.csdnimg.cn/blog_migrate/60d40934a2b6b795adece2db4c574b23.jpeg)
当看到访问docker主机的8081端口,然后映射到docker机器的启动8080端口,然后打印出业务日志并且前端正常接收到返回值。至此一个java项目docker云化处理镜像就搞定了。以后这个项目就可以基于docker的镜像进行扩容部署了。迭代更新镜像即可