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


相关推荐
洒家肉山大魔王28 分钟前
Kubernetes中Pod 处于 CrashLoopBackOff 状态(生产环境)
linux·容器·kubernetes·pod·pod循环重启
Crazy Struggle37 分钟前
.NET 8 微服务框架长什么样?集成 AI 智能体、多租户、自动调度与实时通信
微服务·.net·.net 8.0
小安同学iter2 小时前
天机学堂day05
java·开发语言·spring boot·分布式·后端·spring cloud·微服务
杨浦老苏2 小时前
安全的消息传递和协作工具Virola Messenger
docker·即时通讯·群晖·im
Lynnxiaowen2 小时前
今天我们学习kubernetes内容Ingress资源对象
学习·容器·kubernetes
明月惊雀3 小时前
微服务搭建踩坑
微服务·云原生·架构
jason成都3 小时前
emqx的docker部署
运维·docker·容器
mixboot4 小时前
docker 国内镜像源
docker·镜像源
谷粒.4 小时前
云原生时代的测试策略:Kubernetes环境下的测试实践
运维·网络·云原生·容器·kubernetes
java_logo5 小时前
Milvus GUI ATTU Docker 容器化部署指南
运维·数据库·docker·容器·eureka·milvus