如何使用docker部署springcloud???
如何使用docker部署springcloud??? springcloud 必须基于 springboot 项目来开发, 这里讲解springboot项目的部署, springcloud项目也是同理.
使用Dockerfile形式可部署.
示例: FROM frolvlad/alpine-oraclejdk8
VOLUME /usr/test
ADD test.jar app.jar
EXPOSE
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"] FROM:
Docker是基于镜像的部署,幸运的是Docker官方和开发者们为我们维护了许多高质量的Docker镜像,而基于这些
镜像我们能做出符合自己需求的镜像.此处的FROM意思是我们即将要创建的镜像的基础镜像的名字,这个名字可以是
我们本地已有的镜像, 也可以是Docker Hub上的镜像,如果是Docker Hub上的镜像,此时docker daemon会为我们自动
下载该镜像. 还有一个要注意的点, 如果是本地镜像要加上版本(镜像名:版本号),否则默认版本号为latest. VOLUME:
Docker的运行相当于是操作系统的一个进程,但是该进程又与普通进程有些许不同,因为该进程内部维护着的是我们的一个微服务的完整结构,
而往往项目中需要运行的微服务都有记录日志或者其他写出文件的功能,设想一下这样的情况:
我们的微服务现在正在运行,但是访问量突然增大, 开发人员又没有关注到这一点, 没有进行水平扩展,这时候很有可能这个微服务就down了,
而这个微服务一旦down了之后,出现的情况就是整个容器的status就变成了Exited,而此时如果将容器删除,容器中的所有数据卷会跟随容器
一起删除,因为这些数据卷是临时的, 此处的映射路径为 /usr/test .这是我们自定义的映射路径,后续要演示记录日志的功能.
当然也可以指定/tmp其效果都是在主机的/var/lib/docker/volumes目录下创建一个临时文件,并链接到容器的链接路径.
而为什么链接到容器的/tmp目录呢?因为SpringBoot使用的内嵌Tomcat容器默认使用/tmp作为工作目录.
当然此处的/tmp也可以变成你的日志记录文件夹,这样就可以在本地实时查看日志记录了. ADD:
将我们自身的项目admin.jar 作为 app.jar 加入到容器中. EXPORT:
该命令用于声明在运行时容器提供服务的端口. 注意:这只是一个声明,运行时并不会因为该声明就打开相应的端口.
该指令的作用是帮助镜像使用者理解该镜像服务的守护端口;其次是当运行时使用随机映射时(即run命令的-P参数),
会自动映射EXPORT的端口. ENTRYPOINT:
该命令制定Docker容器启动时执行的命令,可多次设置,但只有最后一条会生效. ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]这条命令中可能部分读者会对
-Djava.security.egd=file:/dev/./urandom 这条命令有疑惑,这是因为linux中和windows中取随机数时的参考策略不同,
linux默认的随机数会被取完,导致返回-,而制定/dev/./urandom这个取随机数的策略时,当随机数取完之后会返回随机数,
不至于影响业务. https://blog.csdn.net/qq_30770095/article/details/79648665
如何使用docker部署springcloud???的更多相关文章
- docker初体验:Docker部署SpringCloud项目eureka-server
Docker部署SpringCloud项目eureka-server 1 创建eureka-server工程 创建父工程cloud-demo,其pom.xml如下: <?xml version= ...
- docker 部署springcloud Feign组件无法访问问题
如题: docker部署后的服务注册ID是这样的. 这导致了Feign在调用其他组件的时候访问不到. 解决: 在docker部署指令添加EUREKA_INSTANCE_IP-ADDRESS=[你的IP ...
- docker 部署springcloud项目
一.首先从 docker.hub[地址:https://hub.docker.com] 中根据各自的需求 pull 对应的 openjdk镜像(本次直接在修改后的docker镜像源中下载) docke ...
- Docker网络配置、Docker部署分布式项目
目标 1.Docker网络配置 2.Docker部署SpringCloud项目 Docker网络配置 Docker网络模式介绍 Docker在创建容器时有四种网络模式:bridge/host/cont ...
- SpringCloud微服务Docker部署
前两写了两篇,都是为SpringCloud+Docker部署做准备,在部署的时候,不同服务器,不同的Docker容器之间的通信,还好没有掉到坑里去,在公司里用了新技术,还是很开心的,小有成就感,之前一 ...
- 十一、Docker搭建部署SpringCloud微服务项目Demo
环境介绍 技术选型:SpringCloud&SpringCloud Alibaba&Docker 微服务模块划分: 员工模块:ems-employees 部门模块:ems-depart ...
- Kubernetes(K8s)部署 SpringCloud 服务实战
1. 概述 老话说的好:有可能性就不要放弃,要敢于尝试. 言归正传,之前我们聊了一下如何在 Kubernetes(K8s)中部署容器,今天我们来聊一下如何将 SpringCloud 的服务部署到 Ku ...
- ASP.NET Core开发-Docker部署运行
ASP.NET Core开发Docker部署,.NET Core支持Docker 部署运行.我们将ASP.NET Core 部署在Docker 上运行. 大家可能都见识过Docker ,今天我们就详细 ...
- Docker部署Hadoop集群
Docker部署Hadoop集群 2016-09-27 杜亦舒 前几天写了文章"Hadoop 集群搭建"之后,一个朋友留言说希望介绍下如何使用Docker部署,这个建议很好,Doc ...
随机推荐
- sqlite删除数据
sqlite删除数据 某日, 在使用sqlite的时候发现查询速度极慢, 查看了一下文件大小, sqlite数据库文件已经达到了 22G! 对于一个文件数据库来说, 已经相当致命了,先不说后面如果解决 ...
- prometheus exporter简介
一.服务分类 在线服务:请求的客户端和发起者需要立即响应(高并发.低延迟:并发数.接口响应时间.错误数.延迟时间),面对突发流量能进行资源的自动伸缩 离线服务:请求发送到服务端但不要求立即获取结果(监 ...
- gogs私有代码库上传项目
https://blog.csdn.net/zhouxueli32/article/details/80538017 一.上传 在cmd命令里进入该项目 然后依次输入以下命令 git initgit ...
- springboot打war包汇总
概述 第一次用maven工具打war包,出现各种各样的问题,做个问题记录方便下次查看 maven 一开始用的maven是springboot默认的,在.m2下,要打包时才发现没有mvn指令.索性自己就 ...
- 安装oracle时出现的问题
数据库引擎和几个功能安装失败后 ,重新再装还是一样,好不容易全部功能装完成后结果发现登录不了oracle!!!!!!!!!!!!! 气死人,搞了一上午才发现原来是微软账号在搞事,登录本地管理员账户就 ...
- linux centos无法删除网站根目录下的.user.ini解决办法
.user.ini文件在执行rm -rf时,提示无法删除 解决办法 首先了解下chattr命令的作用:不让用户修改.删除文件等. -i选项:设定文件不能被删除.改名.设定链接关系,同时不能写入或新增内 ...
- 基于vue+springboot+docker网站搭建【二】搞定服务器
搞定服务器 双11在阿里云用家人的身份证注册账号,买了两台打折的服务器.2核4G一台3年799块:1核2G一台3年229块.机器配置如下图. 1.买的时候注意相同地区的相同可用区.比如我两台机器都选择 ...
- ELK——Elasticsearch 搭建集群经验
本文内容 背景 ES集群中第一个master节点 ES slave节点 迁移到:http://www.bdata-cap.com/newsinfo/1712679.html 本文总结 Elastics ...
- javascript DOM中的节点层次和节点类型概述
针对JS高级程序设计这本书,主要是理解概念,大部分要点源自书内.写这个主要是当个笔记加总结 存在的问题请大家多多指正! 因为DOM这方面的对象方法操作性都特别强,但是逻辑很简单,所以就没有涉及到实际的 ...
- nginx rewrite模块
return 从0.8.42版本开始, return 语句可以指定重定向 url (状态码可以为如下几种 301,302,303,307), 也可以为其他状态码指定响应的文本内容,并且重定向的url和 ...