Docker高级篇之Docker微服务实战

文章目录

    • [1. 构建一个简单的微服务项目](#1. 构建一个简单的微服务项目)
    • [2. 编写Dockerfile发布微服务部署到docker容器](#2. 编写Dockerfile发布微服务部署到docker容器)

1. 构建一个简单的微服务项目

  • 创建一个SpringBoot项目

创建一个Controller

java 复制代码
@RestController
public class OrderController {
    @Value("${server.port")
    private String port;

    @RequestMapping("/order/docker")
    public String helloDocker(){
        return "hello docker"+"\t"+port+"\t"+ UUID.randomUUID().toString();
    }

    @RequestMapping(value = "/order/index",method = RequestMethod.GET)
    public String index(){
        return "服务端口号"+"\t"+port+"\t"+UUID.randomUUID().toString();
    }
}

编写配置文件

yaml 复制代码
server:
  port: 6001

启动测试

  • 将项目打包

2. 编写Dockerfile发布微服务部署到docker容器

  • 编写dockerfile

将要上传到docker中的jar包最好要和Dockerfile放在同一个目录下

bash 复制代码
#基础镜像使用java
#基础镜像使用java
FROM java:8

#作者
MAINTAINER jackiechai

#VOLUE指定临时文件夹为/tmp。在主机指定目录下创建一个临时文件并链接到容器的/tmp
VOLUME /tmp

#将jar包添加到容器并更名
ADD docker_boot-0.0.1-SNAPSHOT.jar jackiechai_docker.jar

#运行jar包

RUN bash -c 'touch /jackiechai_docker.jar'
ENTRYPOINT ["java","-jar","/jackiechai_docker.jar"]
#暴露端口6001作为微服务

EXPOSE 6001
  • 构建镜像
bash 复制代码
docker build -t jackiechai_docker:1.6 .


  • 运行容器
bash 复制代码
docker run -d -p 6001:6001 049325563c49
  • 测试效果


相关推荐
雨辰AI1 小时前
SpringBoot3 + 人大金仓 V9 微服务监控实战|Prometheus+Grafana+SkyWalking 全链路监控
数据库·后端·微服务·grafana·prometheus·skywalking
中冕—霍格沃兹软件开发测试4 小时前
区块链交易最终一致性测试的核心挑战与实践框架
微服务·架构·单元测试·区块链·集成测试·旅游
杨浦老苏4 小时前
自托管网页EPUB阅读器Codexa
docker·群晖·电子书·calibre·opds
杨浦老苏5 小时前
开源文件协作平台OpenCloud
docker·文件管理·群晖·协作
weixin_377634847 小时前
【MinerU】 Docker Compose 使用
docker·容器·mineru
菜鸟的日志7 小时前
【软件架构风格】面向服务架构(SOA)及其微服务演进
微服务·云原生·架构
庚昀◟8 小时前
腾讯云 CVM + Docker + Jenkins + GitLab CI/CD 全流程指南(python、flask实现简单计算器)
python·ci/cd·docker·flask·jenkins
亚历克斯神8 小时前
Java 开发者 2026 成长路线图:从初级到架构师
java·spring·微服务
亚历克斯神8 小时前
Java 代码质量保障:静态分析与代码审查实践
java·spring·微服务