01学习目标
掌握Docker基础知识,能够理解Docker镜像与容器的概念
完成Docker安装与启动
掌握Docker镜像与容器相关明兰
掌握Tomcat Nginx等软件的常用应用的安装
掌握docker迁移与备份相关命令
能够运用Dockerfile编写创建容器的脚本
能够搭建与使用docker私有仓库

02什么是Docker
1.什么是虚拟化
一种资源管理技术,将计算机的各种实体资源予以抽象、转换后呈现出来,打破实体结构间的障碍,使用户可以比原来的组态更好的方式来应用这些资源。虚拟化技术种类很多,例如软件虚拟化,硬件虚拟化,内存虚拟化,网络虚拟化,桌面虚拟化,服务虚拟化,虚拟机等。
2.什么是Docker
Docker项目的目标是实现轻量级的操作系统虚拟化解决方案,Docker的基础是linux容器(LXC)等技术。在LXC基础上Docker进行了进一步的封装,让用户不需要去关心容器的管理,使得操作更为简单,用户操作Docker的容器就像操作一个快速轻量级的虚拟机一样简单。
上手快,职责的逻辑分类,快速高效的开发生命周期,鼓励使用面向服务的架构

03容器和虚拟机比较

容器存储心得体会_容器存储心得体会


04Docker组件

  1. Docker服务器和客户端

容器存储心得体会_docker_02


2.Docker镜像与容器

镜像是构建Docker的基石,用户基于镜像来运行自己的容器,镜像也是Docker生命周期中的构建部分,镜像是基于联合文件系统的一种层式结构,由一系列指令一步一步构建出来。例如

添加一个文件,

执行一个命令,

打开一个窗口,

也可以将镜像当做容器的源代码,镜像体积很小,非常便携,易于分享,存储和更新

3.Registry(注册中心)

Docker用Registry来保存用户构建的镜像,Registry分为公共和私有两种,Docker公司运用公共的Registry叫做DockerHub,用户可以在DockerHub注册账号,分享并保存自己的镜像

https://hub.docker.com

05Docker的安装与启动

1.docker安装

官方建议在Ubuntu中安装

容器存储心得体会_Docker_03


2.设置ustc镜像

容器存储心得体会_docker_04


06Docker的启动与停止

容器存储心得体会_Docker_05


容器存储心得体会_Docker_06


07镜像相关命令

1.查看镜像

容器存储心得体会_docker_07


2.搜索镜像

容器存储心得体会_Docker_08

3.拉取镜像

容器存储心得体会_Docker_09


4.删除镜像

容器存储心得体会_容器存储心得体会_10


08创建启动与查看容器

1.查看容器 启动才能看到

容器存储心得体会_Docker_11

2.创建和启动容器

容器存储心得体会_虚拟化_12


(1)交互式创建容器

退出时自动关闭

容器存储心得体会_虚拟化_13


(2)守护式方式创建容器

容器存储心得体会_Docker_14


09容器停止与启动和目录挂载

容器存储心得体会_Docker_15


文件拷贝

容器存储心得体会_docker_16


10目录挂载查看IP和删除容器

目录挂载:

容器存储心得体会_Docker_17


查看ip地址

容器存储心得体会_容器存储心得体会_18


删除容器(先停掉再删除)

容器存储心得体会_Docker_19

应用部署

11MySQL部署

容器存储心得体会_Docker_20


12tomcat部署

容器存储心得体会_docker_21


13Ngix部署

容器存储心得体会_Docker_22

14Redis部署

容器存储心得体会_虚拟化_23

15迁移与备份

容器存储心得体会_Docker_24


16Dockerfile常用命令

什么是Dockerfile

Dockfile是一系列命令和参数构成的脚本,这些命令应用于基础镜像并最终创建一个新的镜像。

对于开发人员可以为开发团队提供一个完全一致的开发环境

测试–>可以直接拿开发时构建的镜像或者通过Dock’file文件构建一个新的镜像开始工作

运维,实现应用的无缝移植

常用命令

容器存储心得体会_虚拟化_25


使用脚本创建镜像

Dockerfile构建jdk1.8镜像

创建:mkdir -p /usr/local/dockerjdk8
上传jdk8文件
移动到创建的中:mv jdk-8u...tar.gz /user/local/dockerjdk8
进入目录:/user/local/dockerjdk8
构建文件:vi Dockerfile   (固定名字)
在文件中开始编辑

Dockerfile编辑

FROM Centos:7
MAINTATNER WDD
WORKDIR /usr
RUN mkdir /usr/local/java
ADD jdk-8u....tar.gz /usr/local/java/

ENV JAVA_HOME /usr/local/java/jdk1.8.0_171
ENV JRE_HOME $JAVA_HOME/jre
ENV CLASSPATH $JAVA_HOME/bin/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
ENV PATH $JAVA_HOME/bin:$PATH

执行 doker build -t=‘jdk1.8’ .

容器存储心得体会_Docker_26


17Docker私有仓库

私有仓库搭建与配置

容器存储心得体会_虚拟化_27


容器存储心得体会_docker_28


将镜像上传到私有仓库

容器存储心得体会_docker_29