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


相关推荐
陌生人~15 分钟前
docker安装redis
redis·docker
qq_21539789734 分钟前
docker 安装 opengauss 高斯数据库
运维·docker·容器
豆奶特浓61 小时前
Java面试生死局:谢飞机遭遇在线教育场景,从JVM、Spring Security到AI Agent,他能飞吗?
java·jvm·微服务·ai·面试·spring security·分布式事务
f***14772 小时前
对Docker部署的MySQL中的数据进行备份恢复
mysql·docker·容器
u***42072 小时前
macOs安装docker且在docker上部署nginx+php
nginx·macos·docker
m***92383 小时前
docker中配置redis
redis·docker·容器
谷隐凡二3 小时前
Docker 的核心理念及技术的简单说明
运维·docker·容器
daqinzl3 小时前
Docker 安装 Ubuntu
ubuntu·docker
q***49863 小时前
SpringCloud系列教程:微服务的未来 (五)枚举处理器、JSON处理器、分页插件实现
spring cloud·微服务·json
会飞的小蛮猪4 小时前
Ubuntu24.04 基于Containerd部署K8s1.34(私服部署)
docker·云原生·kubernetes