[Docker] Docker为什么出现
Docker为什么出现
一款产品: 开发–上线 -->两套环境 | 应用配置
开发即运维!
环境配置十分麻烦,每一个机器都要部署环境(Redis, ES, Hadoop) 费时费力
项目带上配置环境安装打包。
传统: 开发jar, 运维来做
现在: 开发打包部署上线,一套流程做完!
java – apk --发布 (应用商店) --张三使用apk-- 安装即可用
java – jar(环境) —打包项目带上环境(镜像) –
Docker仓库(商店)–下载我们发布的镜像–直接运行即可
Docker 给以上问题,提出了解决方案。

Docker的思想就来自于集装箱
JRE – 多个应用(端口冲突) — 原来都是交叉的
Docker的核心思想–> 隔离
Docker 是基于GO开发的,开源项目
虚拟机的技术
- 虚拟机的缺点
- 启动慢
- 占用资源多
- 启动慢

容器化技术
容器化技术模拟的不是一个完整的操作系统

比较Docker与虚拟机
-
传统的虚拟机,虚拟出一套硬件,运行一个完整的操作系统,然后在这个系统上安装运行软件
-
容器内的应用直接运行在宿主的内容,容器没有自己的内核,也没有虚拟化的硬件,所以轻便
-
每个容器件相互隔离,每个容器内都有一个属于自己的文件系统,互不影响。
-
Docker是跨平台的
DevOps(开发。运维)
更快地交付和部署
传统: 一堆帮助文档、安装程序
Docker: 打包镜像发布测试,一键运行
更便捷的升级和扩缩容
- 使用Docker之后,我们部署应用就和搭积木一样
更简单的系统运维
在容器化之后,我们的开发,测试环境是高度一致的。
更高效的计算资源利用
Docker 是内核级别的虚拟化,可以在一个物理机上运行很多的容器实例,服务器的性能可以杯压榨到极致
相关文章:
[Docker] Docker为什么出现
Docker为什么出现 一款产品: 开发–上线 -->两套环境 | 应用配置 开发即运维! 环境配置十分麻烦,每一个机器都要部署环境(Redis, ES, Hadoop) 费时费力 项目带上配置环境安装打包。 传统: 开发jar&…...
小程序基础学习(页面跳转传参)
目录 正向传参 原理:直接在url里面拼接参数即可 接受参数 编辑 已经跳转到的页面用onLoad函数来接受即可然后写回页面展示即可 逆向传参 原理:通过使用 getCurrentPages()这个方法来获取返回页面列表,然后再用页面.setDataÿ…...
面试经典150题(85-87)
leetcode 150道题 计划花两个月时候刷完,今天(第四十三天)完成了3道(85-87)150: 85.(77. 组合)题目描述: 给定两个整数 n 和 k,返回范围 [1, n] 中所有可能的 k 个数的组合。 你可…...
【C++】“Hello World!“
🦄个人主页:修修修也 🎏所属专栏:C ⚙️操作环境:Visual Studio 2022 2024.1.14 纪念一下自己编写的第一个C程序 #include<iostream>int main() {/*我的第一个C程序*/std::cout << "Hello world!:>" <<std::endl;ret…...
系统性学习vue-vue中的ajax
vue中的ajax 配置代理常用发送Ajax请求方式跨域方式一方式二 vue-resource插槽默认插槽具名插槽作用域插槽 配置代理 常用发送Ajax请求方式 xhr new XMLHttpRequest() 在真正开发中不常用,比较麻烦jQuery 封装了xhraxios 封装了xhr 与jQuery相比优势是:…...
【PGSQL】date_trunc 函数
date_trunc 函数用于在 PostgreSQL 中将日期或时间戳值截断(向下取整)到指定的精度级别。当您想要忽略较小的时间单位(例如,小时、分钟、秒),专注于较大的单位(例如,天、月、年&…...
使用composer生成的DMG和PKG格式软件包有何区别
在使用Composer从包源构建软件包时候,有两种不同类型的包:PKG和DMG。你知道两者之间的区别吗? 以及如何选取吗? 每种格式都有各自的优势具体取决于软件包的预期用途以及用于部署软件包的工具。下面我们来了解一下PKG和DMG格式的区别和用途。…...
Linux 压缩解压
.tar (注:tar是打包,不是压缩!) 解包:tar xvf FileName.tar -C DirName打包:tar cvf FileName.tar DirName .gz 解压1:gunzip FileName.gz解压2:gzip -d FileName.gz压…...
YUM仓库和NFS共享
目录 一、yum仓库 1. yum仓库介绍 1.1 简介 1.2 实现过程 1.3 实现安装服务 2. yum配置文件及命令 2.1 yum配置文件 2.1.1 yum主配置文件 2.1.2 仓库设置文件 2.1.3 日志文件 2.2 yum命令详解 2.2.1 查询 2.2.2 yum安装升级 2.2.3 软件卸载 3. 搭建仓库的方式 …...
Springboot中时间格式化
时间格式化方式 JsonFromat方式全局配置方式格式化工具方式 JsonFromat方式 前端传参或后端响应 yyyy-MM-dd HH:mm:ss 格式,直接属性字段上加注解 JsonFromat JsonFromat(pattern "yyyy-MM-dd HH:mm:ss", timezone "GMT8") private Date fi…...
蓝桥杯基础知识3 memset()
蓝桥杯基础知识3 memset() #include <bits/stdc.h> using namespace std;int main(){int a[5]; //随机数for(int i 0;i < 5; i)cout << a[i] << \n;cout << \n;memset(a, 0, sizeof a); //0for(int i 0;i < 5; i)cout << a[i] << …...
CentOS安装k8s单机/集群及一些命令
目录 前言 1. 安装docker 2. 安装要求 3.准备网络(如果只装单机版可跳过此部) 4. 准备工作 5. 安装 5.1. 配置阿里云yum k8s源 5.2 安装kubeadm、kubectl和kubelet 5.3 初始化,只在master执行,子节点不要执行 5.3.1 一些…...
iOS和安卓端个人踩坑史
本公司不提供测试机,借手机是开发测试中最麻烦的事 iOS可行组 1、iOS可以播放视频无声音,Andorid有声音 当时做了个远程视频连接项目,使用了jitsi第三方视频服务,iOS没有加dom.play()导致无法接收声音 2、iOS可以长按保存图片…...
前端面试Vue部分补充(详细)
1、vue的基本原理 Vue的基本原理是基于MVVM(Model-View-ViewModel)模式的前端框架。它通过数据绑定和响应式系统来实现数据和视图的自动同步更新。 Vue的基本原理可以概括为以下几个步骤: 1). 解析模板:Vue通过解析模板来生成虚…...
计算机网络重点简答题
文章目录(持续更新) 计算机网络重点简答题📣一、什么是TCP/IP的五层参考模型?✨1.是什么✨2.主要功能✨3.数据包的封装和解封装 📣二、TCP与UDP的区别? 计算机网络重点简答题 📣一、什么是TCP/…...
【迅搜17】SCWS分词(二)自定义字典及分词器
SCWS分词(二)自定义字典及分词器 经过上篇文章的学习,相信大家对分词的概念已经有了更深入的了解了吧。我们也知道了,SCWS 是 XS 中的一个重要组成部分,但它也是可以单独拿出来使用的。而对于分词器来说,不…...
深度学习记录--偏差/方差(bias/variance)
误差问题 拟合神经网络函数过程中会出现两种误差:偏差(bias)和方差(variance) 偏差和误差的区别 欠拟合(underfitting) 当偏差(bias)过大时,如左图,拟合图像存在部分不符合值,称为欠拟合(underfitting) 过拟合(overfitting) …...
React16源码: React中的renderRoot的源码实现
renderRoot 1 )概述 renderRoot 是一个非常复杂的方法这个方法里处理很多各种各样的逻辑, 它主要的工作内容是什么?A. 它调用 workLoop 进行循环单元更新 遍历整个 Fiber Tree,把每一个组件或者 dom 节点对应的Fiber 节点拿出来单一的进行更…...
GitHub项目推荐-incubator
项目地址 Github地址:GitHub - apache/incubator-anser 官网:Apache Answer | Free Open-source Q&A Platform 项目简述 这是Apache的一个开源在线论坛,也可以部署成为一个自有的QA知识库。项目主要使用了Go和Typescript来开发&#…...
如何使用ActiveMQ
ActiveMQ是Apache的一款开源消息总线,主要用来做消息的分发。使用ActiveMQ,通常需要以下步骤: 一、启动ActiveMQ 首先需要下载ActiveMQ,然后进行启动。启动后,可以在控制台创建队列,初始用户名和密码通常…...
第19节 Node.js Express 框架
Express 是一个为Node.js设计的web开发框架,它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用,和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...
多云管理“拦路虎”:深入解析网络互联、身份同步与成本可视化的技术复杂度
一、引言:多云环境的技术复杂性本质 企业采用多云策略已从技术选型升维至生存刚需。当业务系统分散部署在多个云平台时,基础设施的技术债呈现指数级积累。网络连接、身份认证、成本管理这三大核心挑战相互嵌套:跨云网络构建数据…...
JavaSec-RCE
简介 RCE(Remote Code Execution),可以分为:命令注入(Command Injection)、代码注入(Code Injection) 代码注入 1.漏洞场景:Groovy代码注入 Groovy是一种基于JVM的动态语言,语法简洁,支持闭包、动态类型和Java互操作性,…...
基于FPGA的PID算法学习———实现PID比例控制算法
基于FPGA的PID算法学习 前言一、PID算法分析二、PID仿真分析1. PID代码2.PI代码3.P代码4.顶层5.测试文件6.仿真波形 总结 前言 学习内容:参考网站: PID算法控制 PID即:Proportional(比例)、Integral(积分&…...
Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动
一、前言说明 在2011版本的gb28181协议中,拉取视频流只要求udp方式,从2016开始要求新增支持tcp被动和tcp主动两种方式,udp理论上会丢包的,所以实际使用过程可能会出现画面花屏的情况,而tcp肯定不丢包,起码…...
Java - Mysql数据类型对应
Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...
智能AI电话机器人系统的识别能力现状与发展水平
一、引言 随着人工智能技术的飞速发展,AI电话机器人系统已经从简单的自动应答工具演变为具备复杂交互能力的智能助手。这类系统结合了语音识别、自然语言处理、情感计算和机器学习等多项前沿技术,在客户服务、营销推广、信息查询等领域发挥着越来越重要…...
基于Springboot+Vue的办公管理系统
角色: 管理员、员工 技术: 后端: SpringBoot, Vue2, MySQL, Mybatis-Plus 前端: Vue2, Element-UI, Axios, Echarts, Vue-Router 核心功能: 该办公管理系统是一个综合性的企业内部管理平台,旨在提升企业运营效率和员工管理水…...
Bean 作用域有哪些?如何答出技术深度?
导语: Spring 面试绕不开 Bean 的作用域问题,这是面试官考察候选人对 Spring 框架理解深度的常见方式。本文将围绕“Spring 中的 Bean 作用域”展开,结合典型面试题及实战场景,帮你厘清重点,打破模板式回答,…...
MySQL:分区的基本使用
目录 一、什么是分区二、有什么作用三、分类四、创建分区五、删除分区 一、什么是分区 MySQL 分区(Partitioning)是一种将单张表的数据逻辑上拆分成多个物理部分的技术。这些物理部分(分区)可以独立存储、管理和优化,…...
