将spring cloud打包docker镜像
来源:互联网 发布:可以修改图片的软件 编辑:程序博客网 时间:2024/05/29 23:45
将spring cloud打包docker镜像
简介:用spring cloud构建微服务后,微服务肯定要docker镜像化然后用rancher等可视化工具管理,这就是走完了一套基本的流程,现在简单介绍下
环境:两台centos7.x的服务器,一台本地window10
一个spring cloud的eureka的注册中心,
一个spring cloud的普通服务,注册到eureka
前提:首先你的spring cloud注册中心和普通服务要能本地运行,百度一搜到处都是资料,这里我就不细讲了,现在我们要把spring cloud部署到服务器上面
步骤:1.修改注册中心项目配置文件
spring.application.name=eureka-server
server.port=1111
eureka.instance.hostname=IP1 //注册中心所在服务器IP
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
eureka.client.serviceUrl.defaultZone=http://IP1:1111/eureka/ //这里注意加上http://
修改普通服务配置文件
spring.application.name=api-gateway
server.port=5555
eureka.instance.hostname=IP2 //普通服务所在服务器IP
eureka.client.serviceUrl.defaultZone=http://IP1:1111/eureka/ //这里注意加上http://
然后我们打包jar,这里有两种打包方式,一种是运行编译后的java文件,一种是打包jar,我们选择的是打包jar包,进入项目的根目录,按住shift右击鼠标,点击在此处打开窗口,输入mvn install package(需要是maven项目,官网下载的spring boot初始项目自己配置了),完成后进去target目录找到jar包,现在我们直接在服务器上面运行java -jar jar-name是可以的,访问项目地址测试成功,继续将jar包封装成docker image,这个时候我们需要在jar包的同一目录新建一个Dockerfile(必须是这个名称)文件
Dockerfile内容:
# 基于哪个镜像
FROM java:8
# 将本地文件夹挂载到当前容器
VOLUME /home/container
# 拷贝文件到容器,也可以直接写成ADD eureka-server-0.0.1-SNAPSHOT.jar /app.jar
# 这个地方jar包名称改成自己的jar名称
ADD eureka-server-0.0.1-SNAPSHOT.jar app.jar
RUN bash -c 'touch /app.jar'
# 开放1111端口
EXPOSE 1111
# 配置容器启动后执行的命令
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
实际就是执行的linux命令,容器有自己一套独立的环境,实现了环境的隔离,后面不管在什么环境下,我们pull下这个镜像就可以直接运行
然后打包镜像 docker build -t eureka-server . //eureka-server是镜像名称可以自己定,最后的一个.不要省略了,他是用来找到Dockerfile文件的,不然会打包不成功的
打包完成后运行docker images查看镜像,发现有我们的eureka-server镜像了
将镜像运行在容器中:docker run -d -p 1111:1111 eureka-server //-d 表示后台运行,-p是端口映射
成功后查看正在运行容器: docker ps 发现eureka-server已经运行起来,访问http://IP1:1111就出现了我们熟悉的注册中心的界面了,bingo
普通服务是一样的,放在另一台服务器上面(当然也可以放在同一台服务器上面的),启动成功我们就在注册中心页面看到api-gate这个服务已经注册进来了
这样我们就实现了基本的spring cloud的docker化,当然如果你会打包docker镜像了就会发现每次都要打包很烦很烦,需求驱动你需要做持续集成了,还有界面化的管理等等
- 将spring cloud打包docker镜像
- Spring Boot项目打包成docker镜像
- docker打包迁移镜像
- docker打包informix镜像
- docker 7 打包 docker 的镜像
- Docker 容器基础系统镜像打包
- springboot打包docker镜像部署
- Spring Boot学习总结(10)——SpringBoot打包成Docker镜像
- Spring cloud-Docker
- 如何将一个docker镜像push到docker hub
- docker部署spring cloud项目
- [Docker]Docker镜像
- docker 学习笔记---如何将docker 镜像上传到docker hub仓库
- docker 学习笔记---如何将docker 镜像上传到docker hub仓库
- spring boot项目集成spring cloud/docker
- docker(七):Mac docker 将本地镜像push到docker hub官方镜像仓库里面
- 将jar包制作成docker镜像
- 基于CentOS7将JavaWeb项目生成docker镜像
- 日期类的实现
- 求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字
- 虚拟机Hadoop-2.7.1环境搭建(CentOS-6.5)
- 2017第三届智能制造与工业4.0国际峰会即将于11月震撼来袭!
- 二.ARM裸机学习之S5PV210刷机
- 将spring cloud打包docker镜像
- ansible-playbook批量部署nginx
- angularjs中如何实现控制器和指令之间交互
- [NOIP2015]运输计划 树链剖分 二分 差分
- Leetcode算法学习日志-152 Maximum Product Subarray
- 第一次使用MarkDown写日志
- 倒水问题(广度优先搜索)
- 使用docker发布spring cloud应用
- Windows 2003下 IIS+PHP+mysql+ZendOptimizer的安装及配置