前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >docker高级篇:实战-自己开发的微服务怎么在docker上面运行?

docker高级篇:实战-自己开发的微服务怎么在docker上面运行?

原创
作者头像
凯哥Java
发布2022-12-26 20:47:59
1.6K0
发布2022-12-26 20:47:59
举报
文章被收录于专栏:凯哥Java凯哥Java

通过前面的一系列学习,我们已经知道怎么制作dockerfile了(见 Dockerfile介绍及常用保留指令 docker高级篇第三章-dockerfile案例之制作自己的centos镜像 )。那么,本篇文章,咱们就把自己写的spring boot的demo项目,部署在docker上面。

【Docker学习教程系列汇总】笔记及遇到问题解决文章

案例目标:

我们自己开发的微服务怎么在docker上面运行呢?

1:通过IDEA新建一个普通的微服务模块

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

创建微服务项目

1:创建一个简单版的spring boot项目。浏览器可以访问。返回任意信息就可以

2:mvn package后将对应项目的jar上传到docker的宿主机中。比如凯哥上传到mydocker文件夹下。

clipboard.png
clipboard.png

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

1:编写dockerfile文件

# 基础镜像使用java FROM java:8 # 作者 MAINTAINER kagejava # VOLUME 指定临时文件目录为/tmp,在主机/var/lib/docker目录下创建了一个临时文件并链接到容器的/tmp VOLUME /tmp # 将jar包添加到容器中并更名为kagejava_docker.jar ADD docker-demo-0.0.1-SNAPSHOT.jar kagejava_docker.jar # 运行jar包 RUN bash -c 'touch /kagejava_docker.jar' ENTRYPOINT ["java","-jar","/kagejava_docker.jar"] #暴露6001端口作为微服务 EXPOSE 6001

2:构建镜像

docker build -t kaigejava_docker:1.0.1 .

clipboard.png
clipboard.png

3:运行容器

查看镜像是否成功:

clipboard.png
clipboard.png

运行容器:

docker run -d -p 6001:6001 416d15a4026c

clipboard.png
clipboard.png

如果防火墙导致启动失败。可以关闭防火墙,然后在重启docker后再执行命令。如下图:

clipboard.png
clipboard.png

4:访问测试

运行成功后,通过浏览器访问。访问地址是:宿主机id:6001/order/index

clipboard.png
clipboard.png

可以看到运行成功。说明,微服务实战成功。

结束语

如操作有问题欢迎去 我的 个人博客(www.kaigejava.com)留言或者   微信公众号(凯哥Java)留言交流哦。

本系列教程直通车

直通车,本系列教程已发布文章,快速到达,《Docker学习系列》教程已经发布的内容如下:

【图文教程】Windows11下安装Docker Desktop

【填坑】在windows系统下安装Docker Desktop后迁移镜像位置

【Docker学习系列】Docker学习1-docker安装

【Docker学习系列】Docker学习2-docker设置镜像加速器

【Docker学习系列】Docker学习3-docker的run命令干了什么?docker为什么比虚拟机快?

【Docker学习系列】Docker学习2-常用命令之启动命令和镜像命令

【Docker学习系列】Docker学习系列3:常用命令之容器命令

【Docker学习系列】Docker学习4-常用命令之重要的容器命令

【Docker教程系列】Docker学习5-Docker镜像理解

【Docker教程系列】Docker学习6-Docker镜像commit操作案例

【Docker学习教程系列】7-如何将本地的Docker镜像发布到阿里云

【Docker学习教程系列】8-如何将本地的Docker镜像发布到私服?

「Docker学习系列教程」9-Docker容器数据卷介绍

「Docker学习系列教程」10-Docker容器数据卷案例

Docker学习11-Docker常规方式安装软件

「Docker学习系列教程」基础篇小总结及高级篇预告

docker高级篇1-dockeran安装mysql主从复制

docker高级篇2-分布式存储之三种算法

docker高级篇第二章-分布式存储之实战案例:3主3从redis集群扩容配置

docker高级篇第二章-分布式存储之实战案例:主从容错切换迁移案例

Docker高级:Redis集群实战!4主4从缩容到3主3从,怎么处理?

Dockerfile介绍及常用保留指令

docker高级篇第三章-dockerfile案例之制作自己的centos镜像

docker的虚悬镜像是什么?

【Docker学习教程系列汇总】笔记及遇到问题解决文章

大家好,我是凯哥Java(kaigejava),乐于分享,每日更新技术文章,欢迎大家关注“凯哥Java”,及时了解更多。让我们一起学Java。也欢迎大家有事没事就来和凯哥聊聊~~~

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 案例目标:
  • 创建微服务项目
  • 1:编写dockerfile文件
  • 2:构建镜像
  • 3:运行容器
  • 4:访问测试
    • 结束语
    相关产品与服务
    容器服务
    腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档