将本地微服务发布到docker镜像

发布于:2024-08-08 ⋅ 阅读:(177) ⋅ 点赞:(0)

描述

将本地springboot微服务发布到docker镜像中并启动容器

第一步

先本地idea创建一个简单的springboot服务,不需要连接数据库相关操作,只包含简单的接口功能做验证。
相关测试代码如下所示

package com.itwopqq.booting;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * @author 2pqq
 * @desx
 * @date 2024-03-23
 */
@RequestMapping("/user")
@RestController
public class PageController {

    @Value("${server.port}")
    private String port;

    @GetMapping("/order/docker")
    public String order() throws Exception {

        return "hello docker";
    }


    @GetMapping("/order/index")
    public String index() throws Exception {

        return "服务端口号:" + "\t" + port + "\t";
    }
}

完整测试代码连接:https://github.com/fanz1/simple-demo

第二步:执行maven下的命令打包

如下所示,执行package,将我们的服务打成jar包
在这里插入图片描述

第三步:将jar包转成docker镜像文件

  • 上一步取到jar包之后,将jar包上传到服务器上
    在这里插入图片描述

  • 编写Dockerfile文件,为了方便,请将Dockerfile文件与jar包保持同一目录,Dockerfile文件内容如下所示

#基础镜像
FROM java:8

# 作者 
MAINTAINER 2pqq

# 指定临时目录tmp
VOLUME /tmp

# 复制jar包文件
ADD simple-demo-0.0.1-SNAPSHOT.jar simple-demo.jar

#运行jar包
RUN bash -c 'touch /simple-demo.jar'
ENTRYPOINT ["java", "-jar", "/simple-demo.jar"]

#暴露服务端口
EXPOSE 8081
  • 构建镜像
    在Dockerfile目录下执行构建镜像命令

docker build -t simple-demo-jar:1.0 .

  • 构建完成之后查看我们的镜像文件
    在这里插入图片描述

  • 启动我们的容器

 docker run -d --name docker-simple-jar -p 8081:8081 simple-demo-jar:1.0
  • 查看容器是否正常启动

docker ps

在这里插入图片描述

  • 验证功能
    访问微服务中的接口,测试接口是否可以正常访问,如下所示
    在这里插入图片描述

网站公告

今日签到

点亮在社区的每一天
去签到