一、docker简介
Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机)、bare metal、OpenStack 集群和其他的基础应用平台。
Docker通常用于如下场景:
web应用的自动化打包和发布;
自动化测试和持续集成、发布;
在服务型环境中部署和调整数据库或其他的后台应用;
从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建自己的PaaS环境。
Docker 的优点
1、简化程序:
Docker 让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,便可以实现虚拟化。Docker改变了虚拟化的方式,使开发者可以直接将自己的成果放入Docker中进行管理。方便快捷已经是 Docker的最大优势,过去需要用数天乃至数周的 任务,了解springcloud架构可以加求求:三五三六二四七二五九,在Docker容器的处理下,只需要数秒就能完成。
2、避免选择恐惧症:
如果你有选择恐惧症,还是资深患者。Docker 帮你 打包你的纠结!比如 Docker 镜像;Docker 镜像中包含了运行环境和配置,所以 Docker 可以简化部署多种应用实例工作。比如 Web 应用、后台应用、数据库应用、大数据应用比如 Hadoop 集群、消息队列等等都可以打包成一个镜像部署。
3、节省开支:
一方面,云计算时代到来,使开发者不必为了追求效果而配置高额的硬件,Docker 改变了高性能必然高价格的思维定势。Docker 与云的结合,让云空间得到更充分的利用。不仅解决了硬件管理的问题,也改变了虚拟化的方式。
上面文字参考了相关文章;另,关于docker 的安装和基本的使用见相关教程。
二、准备工作
环境条件:
linux系统,不建议windows
docker最新版本
jdk 1.8
maven3.0
本文采用的工程来自第一篇文章的工程,采用maven的方式去构建项目,并采用docker-maven-plugin去构建docker镜像。
三、改造工程、构建镜像
改造eureka-server工程
在pom文件加上插件:
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <!-- tag::plugin[] --> <plugin> <groupId>com.spotify</groupId> <artifactId>docker-maven-plugin</artifactId> <version>0.4.3</version> <configuration> <imageName>${docker.image.prefix}/${project.artifactId}</imageName> <dockerDirectory>src/main/docker</dockerDirectory> <resources> <resource> <targetPath>/</targetPath> <directory>${project.build.directory}</directory> <include>${project.build.finalName}.jar</include> </resource> </resources> </configuration> </plugin> <!-- end::plugin[] --> </plugins> </build>
Spotify 的 docker-maven-plugin 插件是用maven插件方式构建docker镜像的。
imageName指定了镜像的名字,本例为 forep/eureka-server
dockerDirectory指定 Dockerfile 的位置
resources是指那些需要和 Dockerfile 放在一起,在构建镜像时使用的文件,一般应用 jar 包需要纳入。
修改下配置文件:
server: port: 8761 eureka: instance: prefer-ip-address: true client: registerWithEureka: false fetchRegistry: false<br>
编写dockerfile文件:
FROM frolvlad/alpine-oraclejdk8:slim VOLUME /tmp ADD eureka-server-0.0.1-SNAPSHOT.jar app.jar #RUN bash -c 'touch /app.jar' ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"] EXPOSE 8761
docker file编写指令:
FROM
docker file编写指令: FROM
FROM指令必须指定且需要在Dockerfile其他指令的前面,指定的基础image可以是官方远程仓库中的,也可以位于本地仓库。后续的指令都依赖于该指令指定的image。当在同一个Dockerfile中建立多个镜像时,可以使用多个FROM指令。
VOLUME
格式为:
VOLUME ["/data"]
使容器中的一个目录具有持久化存储数据的功能,该目录可以被容器本身使用,也可以共享给其他容器。当容器中的应用有持久化数据的需求时可以在Dockerfile中使用该指令。
ADD
从src目录复制文件到容器的dest。其中src可以是Dockerfile所在目录的相对路径,也可以是一个URL,还可以是一个压缩包
ENTRYPOINT
指定Docker容器启动时执行的命令,可以多次设置,但是只有最后一个有效。
EXPOSE
为Docker容器设置对外的端口号。在启动时,可以使用-p选项或者-P选项。
构建镜像
执行构建docker镜像maven命令:
mvn clean mvn package docker:build
eureka: client: serviceUrl: defaultZone: http://eureka-server:8761/eureka/ # 这个需要改为eureka-server server: port: 8763 spring: application: name: service-hi
相关推荐
【源码编号 : MF00001】的JAVA多用户B2B2C商城系统源码是一款基于Java编程语言开发的电子商务平台,其主要目标是构建一个支持B2B(Business to Business)和B2C(Business to Consumer)模式的综合性购物系统。...
wpf 二维码生成 可设置容错率
深度学习驱动的DL00359-CNN水稻病虫害自动识别系统:助力种植用户精准识别虫害,深度学习驱动的DL00359-CNN水稻病虫害自动识别系统:助力种植用户精准识别虫害,DL00359-深度学习CNN水稻病虫害自动识别系统 本识别项目通过对于用户所上传的水稻图片进行分析,识别出相应的病虫害,通过这种方法帮助种植用户进行虫害的识别 ,DL00359; 深度学习; CNN; 水稻病虫害自动识别系统; 图片分析; 病虫害识别,《深度学习CNN在水稻病虫害自动识别中的应用》
首页界面提供了广告能播界面、金融保险推荐、理财资讯、银行网点信息。导航栏中通过金融保险、银行网点和金融保险资讯链接,查看具体的内容。用户还可以对金融保险进行收藏、评论的操作在个人中心中。管理个人的资金账户,并进行转入资金或者购买金融保险的操作,每一笔操作。系统都进行记录,并在个人中心可以查看收藏的记录以及发布咨询问题。 管理员登录后台后,具有用户管理、账户资金管理、转入资金管理、购买金融保险管理、金融保险管理、银行网点管理、系统管理的权限。管理员通过后台发布金融保险和理财资讯,App端可以查看对应的信息。
微信小程序-计划时钟-从零到一完整实现资源
# 踏入C语言的奇妙编程世界 在编程的广阔宇宙中,C语言宛如一颗璀璨恒星,以其独特魅力与强大功能,始终占据着不可替代的地位。无论你是编程小白,还是有一定基础想进一步提升的开发者,C语言都值得深入探索。 C语言的高效性与可移植性令人瞩目。它能直接操控硬件,执行速度快,是系统软件、嵌入式开发的首选。同时,代码可在不同操作系统和硬件平台间轻松移植,极大节省开发成本。 学习C语言,能让你深入理解计算机底层原理,培养逻辑思维和问题解决能力。掌握C语言后,再学习其他编程语言也会事半功倍。 现在,让我们一起开启C语言学习之旅。这里有丰富教程、实用案例、详细代码解析,助你逐步掌握C语言核心知识和编程技巧。别再犹豫,加入我们,在C语言的海洋中尽情遨游,挖掘无限可能,为未来的编程之路打下坚实基础!
# 踏入C语言的奇妙编程世界 在编程的广阔宇宙中,C语言宛如一颗璀璨恒星,以其独特魅力与强大功能,始终占据着不可替代的地位。无论你是编程小白,还是有一定基础想进一步提升的开发者,C语言都值得深入探索。 C语言的高效性与可移植性令人瞩目。它能直接操控硬件,执行速度快,是系统软件、嵌入式开发的首选。同时,代码可在不同操作系统和硬件平台间轻松移植,极大节省开发成本。 学习C语言,能让你深入理解计算机底层原理,培养逻辑思维和问题解决能力。掌握C语言后,再学习其他编程语言也会事半功倍。 现在,让我们一起开启C语言学习之旅。这里有丰富教程、实用案例、详细代码解析,助你逐步掌握C语言核心知识和编程技巧。别再犹豫,加入我们,在C语言的海洋中尽情遨游,挖掘无限可能,为未来的编程之路打下坚实基础!
网页设计期末大作业+html+css,个人大三设计项目、经导师指导并认可通过的高分设计项目,评审分99分,代码完整确保可以运行,小白也可以亲自搞定,主要针对计算机相关专业的正在做课程设计大作业的学生和需要项目实战练习的学习者,可作为课程设计、期末大作业。 网页设计期末大作业+html+css网页设计期末大作业+html+css网页设计期末大作业+html+css网页设计期末大作业+html+css网页设计期末大作业+html+css网页设计期末大作业+html+css网页设计期末大作业+html+css网页设计期末大作业+html+css网页设计期末大作业+html+css网页设计期末大作业+html+css网页设计期末大作业+html+css网页设计期末大作业+html+css网页设计期末大作业+html+css网页设计期末大作业+html+css网页设计期末大作业+html+css网页设计期末大作业+html+css网页设计期末大作业+html+css网页设计期末大作业+html+css网页设计期末大作业+html+css网页设计期末大作业+html+css网页设计期末大作业+
非线性磁链观测器与PLL仿真模型深度解析:收敛性强,经典文献灵感下的电压补偿与快速收敛复现模型,非线性磁链观测器与PLL仿真模型:详细公式推导及收敛性优化,纯手工复现模型的效果评估,非线性磁链观测器+PLL仿真模型与观测器公式详细推导,非线性磁链观测器收敛性极好。 并根据经典lunwen在d,q轴加入了电压补偿,在低于100r min时给d轴加脉振电压加速其观测器的收敛。 仿真效果较好,快速收敛。 纯手工搭建,根据经典lunwen复现的模型。 ,非线性磁链观测器; PLL仿真模型; 观测器公式推导; 收敛性极好; 电压补偿; 脉振电压加速; 仿真效果快速收敛; 纯手工搭建模型。,非线性磁链观测器与PLL仿真模型:详解收敛性极佳的观测器公式推导与电压补偿策略
1、文件内容:xerces-j2-javadoc-2.11.0-17.el7_0.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/xerces-j2-javadoc-2.11.0-17.el7_0.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、更多资源/技术支持:公众号禅静编程坊
COMSOL 6.1激光超声仿真模型:探究激光激发超声波产生瑞利波数值模拟的新功能及优化,COMSOL 6.1激光超声仿真研究:激光激发瑞利波精确数值模拟,仅限使用V6.1及以上版本打开模型。,COMSOL激光超声仿真:激光激发超声波的产生瑞利波的数值模拟 版本为6.1,低于此版本打不开此模型 ,COMSOL激光超声仿真;激光激发超声波;瑞利波数值模拟;版本6.1,COMSOL 6.1版激光超声仿真:激发瑞利波数值模拟的研究工具
deepseek最新资讯,配置方法,使用技巧,持续更新中
一,开发环境安装 1.把电脑的防火墙关闭了 各种安全相关的软件关了 2. anaconda安装 : qq群下载 或者自己去官网 一直点下一步 不要选路径 3.安装pycharm: qq群下载 或者自己去官网 二,项目环境安装 1. https://github.com/ultralytics/yolov5 下载yolov5的项目框架 2. 命令行输入nvidia-smi 查看CUDA版本 torch官网: https://pytorch.org/get-started/previous-versions/ 下载符合设备GPU版本的torch 3. 下载yolov5依赖的库: pip install -r requirements.txt 或者使用清华源下载yolov5依赖的库: pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
2024免费微信小程序毕业设计成品,包括源码+数据库+往届论文资料,附带启动教程和安装包。 启动教程:https://www.bilibili.com/video/BV1BfB2YYEnS 讲解视频:https://www.bilibili.com/video/BV1BVKMeZEYr 技术栈:Uniapp+Vue.js+SpringBoot+MySQL。 开发工具:Idea+VSCode+微信开发者工具。
COMSOL环境下应力作用下瓦斯渗透运移模型的建立及研究——流固耦合物理场的分析与PDE+结构力学模块应用,应力作用下COMSOL岩层开挖瓦斯渗透运移模型:流固耦合物理场考虑与PDE+结构力学模块应用研究,comsol岩层开挖作用下瓦斯渗透运移模型,考虑应力作用下的渗透率变化,流固耦合物理场,使用pde+结构力学模块,参考相关文献建立。 ,核心关键词:COMSOL;岩层开挖;瓦斯渗透运移模型;应力作用;渗透率变化;流固耦合物理场;PDE+结构力学模块;参考文献。,应力作用下瓦斯渗透运移模型研究
2024免费微信小程序毕业设计成品,包括源码+数据库+往届论文资料,附带启动教程和安装包。 启动教程:https://www.bilibili.com/video/BV1BfB2YYEnS 讲解视频:https://www.bilibili.com/video/BV1BVKMeZEYr 技术栈:Uniapp+Vue.js+SpringBoot+MySQL。 开发工具:Idea+VSCode+微信开发者工具。
deepseek最新资讯、配置方法、使用技巧,持续更新中
基于共享储能电站的江苏省工业用户日前优化经济调度与容量配置策略,基于共享储能电站的江苏省工业用户日前优化经济调度与容量配置研究,MATLAB代码:基于共享储能电站的工业用户日前优化经济调度 关键词:共享储能 储能电站 容量优化配置 充放电优化 日前优化调度 参考文档:《基于共享储能电站的工业用户日前优化经济调度》 仿真平台:MATLAB+CPLEX 主要内容:代码主要做的是一个共享储能电站的优化调度问题,考虑在工业用户侧装设共享电站,从而满足不同工业用户的储能容量需求,同时,共享储能电站的容量是未知的,因此模型还涉及到容量优化配置的问题,即先配置再调度,所以内容十分丰富,由于模型中还出现了非线性项,考虑以Big-M法对模型进行线性化处理,通过协调各用户使用共享储能电站进行充电和放电的功率, 实现用户群日运行成本最优。 最后以江苏省 3 个工业用户进行算例仿真,求解效果与lunwen基本一致。 ,关键词:共享储能; 储能电站; 容量优化配置; 充放电优化; 日前优化调度; 工业用户; 江苏省; Big-M法; 线性化处理; 运行成本最优。,基于共享储能电站的工业用户日前优化调度策略
1、文件内容:xml-commons-resolver-javadoc-1.2-15.el7.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/xml-commons-resolver-javadoc-1.2-15.el7.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、更多资源/技术支持:公众号禅静编程坊
多属性决策判决算法在异构网络(GSM、TDS、LTE)垂直切换中的Matlab仿真研究:操作录像与参考分析,多属性决策判决算法在异构网络(GSM、TDS、LTE)垂直切换中的Matlab仿真研究:操作录像与参考分析,多属性决策判决算法的异构网络垂直切matlab仿真,异构网络为GSM,TDS,LTE,操作录像+参考 ,核心关键词: 多属性决策;判决算法;异构网络;垂直切换;GSM;TDS;LTE;Matlab仿真;操作录像;参考。,多属性决策异构网络垂直切换的Matlab仿真与录像操作研究