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进行访问

相关推荐
短剑重铸之日1 小时前
《SpringCloud实用版》生产部署:Docker + Kubernetes + GraalVM 原生镜像 完整方案
后端·spring cloud·docker·kubernetes·graalvm
奈斯ing1 小时前
【Oracle篇】基于OGG 21c全程图形化实现9TB数据从Oracle 11g到19c的不停机迁移(上):微服务架构详解与微服务部署,及同步问题总览(第一篇,总共三篇)
微服务·oracle·架构
Hernon2 小时前
微服务架构设计 - 架构取舍决策CAP
微服务·云原生·架构
lots洋2 小时前
使用docker-compose安装mysql+redis+nacos
redis·mysql·docker
GHL2842710903 小时前
Docker Desktop 启动报错“Virtualization support not detected“
c++·docker·容器
susu10830189114 小时前
docker启动kafka
docker·容器·kafka
vx-bot5556665 小时前
企业微信接口在微服务协同架构中的事件桥接与状态同步模式
微服务·架构·企业微信
何以不说话5 小时前
记录一下学习日常⑩(docker)
linux·运维·docker·容器
编程彩机6 小时前
互联网大厂Java面试:从Spring Cloud到分布式事务的技术场景解析
java·spring cloud·微服务·消息队列·分布式事务
淡泊if6 小时前
RESTful API设计标准:单体 vs 微服务的最佳实践
后端·微服务·restful