1.认识Docker

发布于:2025-06-30 ⋅ 阅读:(19) ⋅ 点赞:(0)

Docker学习

1.doker概述

2.doker安装

3.doker命令

镜像命令

容器命令

操作命令

........

4.doker镜像

5.容器数据卷

6.Dockerfile

7.Docker网络原理

8.IDEA整合Docker

9.集群,docker compose(集群管理)

10.docker swarm(简化版的k8s)

11.CI\CD Jenkins

一.Docker概述

1.Docker为什么出现

(1)一个产品:开发-上线,两套环境,应用环境,应用配置(端口等等)

开发人员,运维人员

开发即运维

环境配置十分的麻烦,每个机器都需要部署集群(redis集群,ES集群,Hadoop。。。)非常费力。

比如现在我们需要发布一个项目,以前配置环境,发布一个jar,var包,,现在的话这个jar包需要(redis,MYsql,jdk ES环境)。

现在我们项目可不可以直接带着这个配置环境一起发布(jar+(jdk,redis,mysql)),这个就是doker的作用

传统:开发jar,运维来做

现在:开发打包部署上线,一套流程做完。

java---apk---发布(应用商店)---张三只用下载这个apk就能使用

java-jar(环境)---打包项目带上环境(镜像)(类比window)---docker仓库(商店)---直接运行即可

跑了一个JRE--多个应用--端口冲突---原来是交叉

隔离:docker核心思想,打包装箱,每个箱子是相互隔离的(通过镜像)

docker通过隔离机制,将我们的服务器利用到极致

Docker历史

docker相比较与虚拟机更轻巧

在容器出来之前,用的都是虚拟机

虚拟机:在windows中装vmware,通过一个虚拟机进行一台或者多台,笨重

虚拟机是一种虚拟技术,docker容器技术也是一种虚拟技术!

VM:Linux Centos原生镜像(一个电脑),隔离,需要开启多个虚拟机,几分钟,几个G

Docker:隔离,镜像(最核心的环境jdk,mysql),十分的轻巧,运行镜像即可,几秒,几M

Docker是基于go语言开发,开源项目

2.Docker能干什么?

之前的虚拟机技术:传统是内核(操作系统)+环境(自行下载)+应用app

缺点:

1.资源占用十分多

2.冗余资源多

3.启动很慢

容器化技术:并不是完整的系统,只是保有内核,通过容器(环境+应用)

DevOps(开发、运维)

应用更快速的交付和部署

传统:一堆帮助文档,安装程序

Docker:打包镜像发布测试,一键运行

更便捷的升级和扩缩容

使用Docker之后,更像搭积木一样,比如现在这个项目,有spring boot,redis5 ,tomcat 8,之前需要一个个升级,而通过docker,直接打包为一个镜像

更简单的系统运维

通过容器化之后,我们的开发,测试环境都是高度一致。

更高效的计算资源利用:

Docker是一个内核级别的虚拟化,可以在我们物理机上运行多个容器实力,服务器性能能被压榨到极致


网站公告

今日签到

点亮在社区的每一天
去签到