学前准备:
1.Linux 必要 2.SpringBoot
Docker学习
- Docker概述:
- Docker安装
- Docker命令
- 镜像命令
- 容器命令
- 操作命令
- Docker镜像
- 容器数据卷
- DockerFile
- Docker网络原理
- IDEA整合Docker
- Docker Compose
- Docker Swarm
- CICD Jenkins
Docker概述
Docker为什么会出现?
一款产品 : 开发上线 两套环境 ! 应用环境,应用配置 !
开发 --- 运维 问题: 我在我的电脑上可以运行 ! 版本更新,导致服务不可用 ! 对于运维来说,考验十分大 环境配置十分的麻烦,每一个机器都要部署环境 (集群Redis ES Hadop....)! 费事费力
发布一个项目 jar ( Redis Mysql jdk ES)
之前在服务器配置一个应用的环境 Redis Mysql Jdk ES Hadop 配置超麻烦了 , 不能够跨平台.
Windows , 最后发布 Linux!
传统: 开发 jar , 运维部署
现在 : 开发打包部署上线,一套流程做完 !
java -- apk -- 发布 (应用商店) -- 张三使用apl -- 安装既可用 !
java -- jar( 环境) --- 打包项目带上环境 (镜像) -- (docker仓库 : 商店) --- 下载我们发布的镜像--直接运行即可
Docker 给以上问题提出了解决方案 !
docker的思想就来自于集装箱 !
JRE -- 多个应用 ( 端口冲突 ) --- 原来都是交叉的 !
隔离 : Docker核心思想 ! 打包装箱 ! 每个箱子都是互相隔离的.
水果 生化武器
Docker 通过一个隔离机制 , 可以将服务器利用到极致 !
本质 : 所有的技术都是因为出现了一些问题 , 我们需要去解决才去学习 !
Docker的历史
2010年,几个搞It的年轻人,就在美国成立了一家公司"dotCloud"
做一些pass的云计算服务 ! LXC有关的容器技术
他们将自己的技术(容器化技术)命名 就是 Docker
Docker刚刚诞生的时候,没有引起行业的注意 ! dotCloud , 就活不下去 !
开发源代码 !
2013年 Docker开源 !
Docker 越来越多的人发现了Docker的优点 ! 火了,Docker 每一个月就会更新一个版本 !
2014年4月9日,Docker 1.0发布 !
Docker为什么这么火 ? 十分的轻巧 !
在容器技术出来之前,我们都是使用的虚拟技术 !
虚拟机 : 在window种装一个虚拟机软件 Vmware , 通过这个软件可以虚拟出来一台或者多台电脑 !
笨重 !
虚拟机也是属于一个虚拟化技术,Docker容器技术,也是一种虚拟化数据 !
Linux centos原生镜像(一个电脑) 隔离,需要开启多个虚拟机
Docker : 隔离 , 镜像 (最核心的环境 4m + jdk + MySQL) 十分的小巧 , 运行镜像就可以了 ! 小巧
到现在 , 所有开发人员必须要都会 Docker
聊聊Docker
Docker是基于Go语言开发的 ! 开源项目 !
官网 : Empowering App Development for Developers | Docker
虚拟机技术缺点 :
1 资源占用十分多
2 冗余步骤多
3 启动很慢
容器化技术
容器化技术不是模拟一个完整的操作系统
比较Docer和虚拟技术的不同 :
- 传统虚拟机,虚拟出一条硬件 , 运行出一个完整的操作系统,然后在这个系统之上安装和运行软件
- 容器内的应用直接运行在宿主机的内容,容器是没有自己内核的,也没有虚拟我们的硬件,所以就轻便了
- 每个容器间都是互相隔离,每个容器内都有一个属于自己的文件系统,互不影响
DevOps (开发 运维)
应用更快捷的交付和部署
传统 : 一堆帮助文档,安装程序
Docker : 打包发布测试,一键运行
更快捷的升级和扩缩容
使用了Docker之后,我们部署应用就和搭积木一样 !
更简单的系统运维
在容器化之后,我们的开发,测试环境都是高度一致的.
更高效的计算资源利用
Docker 是 内核级别的虚拟化,可以在一个物理机上运行很多的容器实例 ! 服务器的性能可以被压榨到极致
Docker的安装
Docker的基本组成
镜像 (image) :
docker镜像好比是一个模板,可以通过这个模板来创建容器服务,,tomcat镜像===>run===>tomcat01 (提供服务器)通过这个镜像可以创建多个容器( 最终这个服务运行或者项目运行就是在容器中的)
容器 (container) :
Docker 利用容器技术,独立运行一个或者一组应用,通过镜像来创建的.
启动,停止,删除,基本命令
目前就可以把容器理解为就是一个简易的linux系统
仓库 (repostory):
就是存放镜像的地方 !
仓库分为共有仓库和私有仓库 !
Docker Hub(默认是国外的)
阿里云...都有容器服务(配置镜像加速 ! )
安装Docker
环境准备
1 需要会一点点的Linux基础
2 CentOS 7
3. 使用Xshell 连接远程服务器进行操作
环境查看
启动Docker
一切都安装好之后就开始启动Docker了
当你启动好后就可以输入命令查看docker是否安装成功
然后就可以下载 hello world了
下载完后就可以查看hello world 镜像了
当你不在使用docker时,此时就可以进行docker得卸载了