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


相关推荐
利威尔xu8 分钟前
Go IM 源码实战(2):WebSocket 握手 11 步,少 1 个参数连不上
后端·websocket·微服务·面试·golang
吴声子夜歌1 小时前
Docker入门与实战——常见问题总结
运维·docker·容器
丨晨 丨1 小时前
K8s控制器天团图鉴-五大控制器整活
云原生·容器·kubernetes
马立杰3 小时前
Docker Build 编译补丁版 PHP7.4 FPM 容器镜像教程(CVE-2026-109618 CVE-2026-109619)
运维·docker·容器·php
tedcloud1233 小时前
Docker Compose 部署 Memos:从安装到备份恢复
linux·开发语言·jvm·后端·docker·容器·rust
无人生还别怕4 小时前
如何搭建k8s服务(docker部署)
linux·运维·docker·云原生·容器·kubernetes·openanolisos
samforce4 小时前
为什么微服务会退化成“分布式单体”?——软件架构里的嵌套率传导定律
人工智能·分布式·微服务·架构·软件架构·结构认知
*星星之火*4 小时前
【无标题】
docker·gcp·gke
姜鱼问生5 小时前
报数据库连不上?Docker Compose 启动顺序假象:depends_on 不是万能的!
数据库·docker·容器
Vex2une5 小时前
WSL2 Docker开发环境:2026年容器化编程性能调优指南
docker·开发环境·wsl2·容器化开发·virtiofs·dev drive·gpu直通