Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

Docker概述

什么是容器

容器技术已经成为应用程序封装的叫付的核心技术

容器技术的核心有以下几个内核技术组成:

  • Cgroups(Control Groups)-资源管理
  • NameSpace-进程隔离
  • SELinux安全

由于是在物理机上实施隔离,启动一个容器,可以像启动一个进程一样快速

 

什么是Docker

Docker是完整的一套容器管理系统

Docker提供了一组命令,让用户更加方便直接的使用容器技术,而不需要过多关心底层内核技术

 

Docker特性

Docker优点

  • 相比于传统的虚拟化技术,容器更加简洁高效
  • 传统虚拟机需要给每个VM安装操作系统
  • 容器使用的共享公共库和程序

 

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

Docker缺点

  • 容器的隔离性没有虚拟化强
  • 公共用Linux内核,安全性有先天缺陷
  • SELinux难以驾驭
  • 监控容器和容器排错是挑战

 

 

部署Docker

 

安装前准备

  • 需要64位操作系统

  • 至少RHEL6.5以上的版本,强烈推荐RHEL7

  • 关闭防火墙(不是必须)

 

安装Docker

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

安装Docker

在虚拟机中配置yum源,指向刚刚创建的目录

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

软件包安装

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

案例

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

Docker镜像

 

基本概念

什么是镜像

  • 在Docker中容器是基于镜像启动的
  • 镜像是启动容器的核心
  • 镜像采用分层设计
  • 使用快照的COW技术,确保底层数据不丢失

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

Docker hub镜像仓库

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

镜像操作

下载上传镜像

下载镜像

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

上传镜像

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

导入、导出镜像

导出镜像

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

导入镜像

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

启动镜像

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

案例

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

镜像常用命令

  • docker images     //查看镜像列表
  • docker history    //查看镜像制作历史
  • docker inspect    //查看镜像底层信息
  • docker pull    //下载镜像
  • docker push   //上传镜像
  • docker rmi   //删除本地镜像
  • docker save    //镜像另存为tar包
  • docker load   //使用tar包导入镜像
  • docker search   //搜索镜像
  • docker tag  //修改镜像命令和标签

 

docker images 

镜像仓库名称  镜像标签  镜像ID  创建时间  大小

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

docker history

查看镜像历史

-了解镜像制作过程

-详细参考后面的dockerfile内容

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

docker inspect 

查看镜像底层信息

-了解镜像环境变量、存储卷、标签等信息

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

docker rmi

删除本地镜像

-注意:启动容器是删除镜像会提示错误

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

docker save|load

保存本地镜像另存为tar文件

-方便其他人使用tar包导入镜像

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

使用tar包文件导入镜像

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

docker tag

重命名镜像名称(复制,功能类似于ln连接)

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

容器常用命令

  • docker run   //运行容器
  • docker ps  //查看容器列表
  • docker stop   //停止容器
  • docker start   //启动容器
  • docker restart  //重启容器
  • docker attach|exec  //进入容器(上帝模式|普通模式)
  • docker inspact  //查看容器底层信息
  • docker top   //查看容器进程列表
  • docker rm  //删除容器

 

docker run

使用镜像启动容器

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

dockerps 

列出容器列表

-docker ps  查看正在运行的容器

-docker ps -a 查看所有容器列表

-docker ps -aq  仅显示容器id

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

docker stop |start|restart

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

docker attach|exec

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

docker inspect 

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

docker top

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

docker rm 

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

 

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑

Docker概述 、 部署Docker 、 Docker镜像 、 Docker基本命令 、 总结和答疑