01
前提知识:强制 linux,尚硅谷 韩顺平
建议 Git命令
课程时间1.5天
定位:java开发/Docker开发
docker–云平台–阿里云
JavaEE–Java
Docker–Go语言 (区块链部分)
docker基础篇 docker高级篇
02
开发:代码 war包 —》 运维:部署
两者环境和配置一致的问题
代码/配置/系统/数据。。。一起打包 封装完,就叫镜像 接近于Java虚拟机的理念,一次编译,多次运行
03
一次封装,到处运行
开发给运维镜像,一个集装箱是一个需要的依赖软件,运维只装一个鲸鱼,把所有的集装箱接过来。
仓库,镜像,容器
04
linux内核和各种库kernel,library 虚拟机是分钟级,docke是秒级
虚拟机占用资源多,荣誉步骤多,启动慢,连硬件都模拟
linux容器不模拟完整的操作系统,而是对进程进行隔离,只将需要的软件打包进容器
容器内的应用进程直接运行于宿主的内核,容器内没有自己的内核,而且也没有进行硬件虚拟。每个容器之间相互隔离,每个容器都有自己的文件系统,能区分计算资源。
DevOps 运维工程师有失业的危险了
业界趋势:
如何10分钟完成1000节点扩容能力,混合云趋势,12306借助阿里云解决春节余票查询峰值问题,京东618大促借助Docker为基础的弹性云解决峰值流量问题。Docker、Mesos等容器新技术使大规模动态调度成为可能。关晓彤和鹿晗恋情,一瞬间服务器访问暴增,利用弹性云动态调度。
基于容器的虚拟化,仅包含业务运行所需的runtime环境,CensOS/Ubuntu基础镜像仅170M!!!!!虚拟机上4G!!!!宿主机可部署100到1000个,美团云Docker框架。
未来开发,不在本机而在云端,一定是趋势。
凡技术必登官网。
http://www.docker.com
https://www.docker-cn.com/
https://yeasy.gitbooks.io/docker_practice/content/install/debian.html
很好的教程
仓库:DockerHub
https://hub.docker.com
提交镜像的。国外的网站–》太慢—》阿里云
05 06
尚硅谷的课程偏向于后端
CentOS必须6.5以上、系统内核版本为2.6.32-431或更高版本,推荐6.8和7
查看自己的内核 uname -r
cat /etc/redhat-relase
Docker架构图 图10
docker终端–》
镜像 容器 仓库
Person p1(容器) = new Person()(镜像)
利用容器运行一个或一组应用。容器是用镜像创建的运行实例。
仓库是集中存放镜像文件的地方。镜像的Tag是版本号。阿里云、网易云,是国内常用。
07 08
CentOS6.8:
Docker的安装:图1、2、3、4、5
yum–》能上外网 docker需要依赖库epel
CentOS7:
CE社区版免费,用社区版 图6、7 用官网的教程 CentOS7的配置文件 图13
09 10
图8、9
本机是Docker-Host,现在从仓库里抓下来一个helloworld镜像,以这个helloworld为模板,运行一个helloworld容器实例进行验证。
(因为国外的网速太慢了)(国内活雷锋,克隆了一份)
(为了从库里抓下来你需要的应用的镜像文件)
–》阿里云镜像加速配置 https://dev.aliyun.com 图11、12
分配给你的镜像加速器文件(专属加速地址)是图14、15
**CentOS6.8:**配置本机Docker运行镜像加速器 图16、17(告诉Docker,凡是要镜像文件,去阿里云,不要去国外的网站)
查看Docker进程后面有 图18 说明配置成功
**CentOS7:**网站上是CentOS7的过程 图19 新建并编辑,把json串复制进去 大体过程同上
–》网易云加速配置 不同之处在于图20
推荐阿里云,更全面
–》启动Docker后台容器(测试运行):
图21、22、24
run–》先在本地找该镜像 图23 latest是镜像的标签(版本号),没有就从阿里云pull
run命令的过程是:图25
11
底层原理:Docker是怎么工作的 守护进程就是Docker daemon(图10) 图26、为什么Docker更快图27、28 将Hypervisor接口替换成Docker引擎
12 13
Docker常用命令 帮助命令图29
镜像命令图30
操作说明图34
镜像和容器的概念一定要深入理解 图31、32
镜像命令 1、列出本地主机上的镜像 图33、35 镜像就像千层饼,一层裹着一层,helloworld里面还有
2、搜索某个镜像的名字
–》网站 https://hub.docker.com 搜索的时候还是从国外的网站上,拉的时候是从阿里云拉 图36
–》命令 图37
参数说明 图41
以寻找Tomcat镜像为例:图38
从Dockerhub上找到了,官方版本,在网站上搜也可以找到 图39,
可以看到操作的命令 图40
3、下载镜像 图42
如例 图43
不写版本号就默认最新版本 图44
下载如例 图45
4、删除镜像的各种操作 图46多个时以空格分隔
为什么Tomcat会460多MB这么大,这里暂时存疑 图47
结合Git,docker也会有docker commit/docker push