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
  • 测试效果


相关推荐
记忆停留w5 小时前
从单体到微服务:Redis 协同 MySQL、Milvus、MinIO 搭建企业级RAG/AI Agent脚手架架构
大数据·人工智能·redis·微服务·ai·架构·milvus
数智化转型推荐官8 小时前
2026统一身份管理系统五大发展趋势解读
java·运维·微服务
donoot11 小时前
一次 Nginx 502 问题的深度排查:从 SELinux 到容器网络
nginx·docker·selinux·反向代理·502 bad gateway
Sagittarius_A*13 小时前
Docker:渗透前置容器化核心基础
运维·安全·docker·容器
豆瓣鸡14 小时前
网关、服务 userId 透传
java·微服务·gateway
Devin~Y14 小时前
电商场景下的Java面试实战:从Spring Boot微服务到Kafka、Redis与AI RAG
java·spring boot·redis·elasticsearch·spring cloud·微服务·kafka
SizeTheMoment15 小时前
Spring Cloud 微服务认证体系深度解析:从架构设计到安全实践
安全·spring cloud·微服务
名字还没想好☜16 小时前
Docker 多阶段构建:把镜像从 1.2GB 砍到 15MB
运维·docker·容器·多阶段构建·镜像优化
花和满楼16 小时前
K8s 1.36 ImageVolume GA:OCI 镜像不再只能跑容器
java·容器·kubernetes
山东点狮信息科技有限公司16 小时前
企业级应用双模式部署架构设计:从单体到微服务的平滑演进
运维·微服务·架构