Docker微服务实战Demo

  1. 通过IDEA新建一个微服务模块
  2. 通过dockerfile发布微服务部署到docker容器

通过IDEA新建一个微服务模块

  1. 新建一个spring boot项目module
  2. mvn package打成一个jar包

通过dockerfile发布微服务部署到docker容器

  1. 编写dockerfile
  2. 构建镜像
  3. 运行容器
  4. 访问测试
编写dockerfile
复制代码
## 继承自镜像java8
FROM java:8

## 作者
MAINTAINER chz

## 在主机/var/lib/docker目录下创建一个临时文件,并链接到容器的/tmp
VOLUME /tmp

## 将jar包添加到容器并改名为hello.jar
ADD hello-0.0.1-SNAPSHOT.jar hello.jar

## 运行jar包
RUN bash - c 'touch /hello.jar' 
ENTRYPOINT ["java","- jar","hello.jar"]

## 暴露8080端口号作为微服务端口号
EXPOSE 8080
构建镜像
  1. 将微服务的jar包和Dockerfile文件放到同一目录下

  2. 打包成镜像文件

    -t后面的参数,表示给镜像指定一个标签tag

    标签hello.jar 版本1.0

    . 表示使用当前目录构建上下文

    docker build -t hello.jar:1.0 .

运行容器
复制代码
## -d表示以后台守护进程模型运行 -p表示端口映射 docker端口:宿主机端口
docker run -d -p 8080:8080 IMAGE_ID/IMAGE_NAME

如果出现iptables failed,一般是防火墙问题,需要关闭防火墙

复制代码
systemctl stop firewalld
systemctl restart docker
访问测试

宿主机输入地址,进行访问。

或者docker中输入 curl 127.0.0.1:8080/xxx进行访问

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