java项目docker云化入门

目录

01 创建java项目

1、指定pom父文件和依赖

2、系统启动类

3、API服务类

02 开始处理dockefile

03 打包构建镜像

1、安装docker,初学者就直接用yum 一键安装即可

2、打包

3、检查当前服务器镜像

4、启动docker镜像 并访问对应地址


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 打包

java项目docker云化入门

进入target文件夹执行 java -jar docker_example.jar看到如下图

java项目docker云化入门

这个时候我们的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 .

java项目docker云化入门

3、检查当前服务器镜像

Docker images

java项目docker云化入门

4、启动docker镜像 并访问对应地址

docker run -it -p 8081:8080 docker_example:v1.0  

java项目docker云化入门

当看到访问docker主机的8081端口,然后映射到docker机器的启动8080端口,然后打印出业务日志并且前端正常接收到返回值。至此一个java项目docker云化处理镜像就搞定了。以后这个项目就可以基于docker的镜像进行扩容部署了。迭代更新镜像即可

 

关注下方二维码,每周杂谈:java老兵陪你聊编程

java项目docker云化入门