docker的中文解释是码头工人。
官方解释:
Docker是一个开源的容器引擎,它基于LCX容器技术,使用Go语言开发。
源代码托管在Github上,并遵从Apache2.0协议。
Docker采用C/S架构,其可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。
Docker就是一种快速解决生产问题的一种技术手段,开发,运行和部署应用程序的开放管理平台。
开发人员能利用docker 开发和运行应用程序
运维人员能利用docker 部署和管理应用程序
3、为什么使用Docker自2013年出现以来,发展势头很猛,现在可说是风靡全球。 docker的第一版为0.1.0 发布于2013年03月23日
Docker2017年改版前的版本号是1.13.1发布于2017年02月08日
Docker从1.13.x版本开始,版本分为企业版EE和社区版CE,版本号也改为按照时间线来发布,比如17.03就是2017
年3月,有点类似于ubuntu的版本发布方式。 企业版自然会提供一些额外的服务,当然肯定也是收费的。 企业版
说明https://blog.docker.com/2017/03/docker-enterprise-edition/
社区版分为stable和edge两种发布方式。 stable版本是季度发布方式,比如17.03, 17.06, 17.09
edge版本是月份发布方式, 比如17.03, 17.04…Docker客户端(Docker Client)
Docker客户端(Docker Client)是用户与Docker进行交互的最主要方式。当在终端输入docker命令时,对应的就会
在服务端产生对应的作用,并把结果返回给客户端。Docker Client除了连接本地服务端,通过更改或指定
DOCKER_HOST连接远程服务端。
Docker服务端(Docker Server)
Docker Daemon其实就是Docker 的服务端。它负责监听Docker API请求(如Docker Client)并管理Docker对象
(Docker Objects),如镜像、容器、网络、数据卷等
Docker Registries
俗称Docker仓库,专门用于存储镜像的云服务环境.
Docker Hub就是一个公有的存放镜像的地方,类似Github存储代码文件。同样的也可以类似Github那样搭建私有
的仓库。
Docker 对象(Docker Objects)
镜像:一个Docker的可执行文件,其中包括运行应用程序所需的所有代码内容、依赖库、环境变量和配置文件
等。
容器:镜像被运行起来后的实例。
网络:外部或者容器间如何互相访问的网络方式,如host模式、bridge模式。
数据卷:容器与宿主机之间、容器与容器之间共享存储方式,类似虚拟机与主机之间的共享文件目录。
Docker使您能够将应用程序与基础架构分开,以便您可以快速交付软件。
借助Docker,您可以像管理应用程序一样管理基础架构。
通过利用Docker的方法快速进行运输,测试和部署代码,您可以显着缩短编写代码和在生产环境中运行代码之间的延迟。
Docker主要解决的问题:
4、docker的基本命令格式:保证程序运行环境的一致性;
降低配置开发环境、生产环境的复杂度和成本;
实现程序的快速部署和分发。
#基本格式
systemctl [参数] docker
#参数详解:
start 开启服务
stop 关闭
restart 重启
status 状态
删除docker命令:
sudo apt-get purge docker-ce -y sudo rm -rf /etc/docker sudo rm -rf /var/lib/docker/docker基本目录简介:
/etc/docker/ #docker的认证目录 /var/lib/docker/ #docker的应用目录
5、docker镜像管理
搜索镜像Docker镜像是什么? 镜像是一个Docker的可执行文件,其中包括运行应用程序所需的所有代码内容、依赖库、环境变量和配置文件等。 通过镜像可以创建一个或多个容器。
#作用 搜索Docker Hub(镜像仓库)上的镜像 #命令格式: docker search [镜像名称] #命令演示: $ docker search ubuntu #NAME:名称 #DESCRIPTION:基本功能描述 #STARS:下载次数 #OFFICIAL:官方 #AUTOMATED:自动的运行获取镜像
#作用: 下载远程仓库(如Docker Hub)中的镜像 #命令格式: docker pull [镜像名称] #命令演示: $ docker pull ubuntu $ docker pull nginx #注释: #获取的镜像在哪里? #/var/lib/docker/image 目录下 vim /var/lib/docker/image/overlay2/repositories.json查看镜像
#作用: 列出本地镜像 #命令格式: docker images [镜像名称]镜像重命名
#作用: 对本地镜像的NAME、TAG进行重命名,并新产生一个命名后镜像 #命令格式: docker tag [老镜像名称]:[老镜像版本][新镜像名称]:[新镜像版本]删除镜像
#作用: 将本地的一个或多个镜像删除 #命令格式: docker rmi [命令参数][镜像ID] docker rmi [命令参数][镜像名称]:[镜像版本] docker image rm [命令参数][镜像]导出镜像
将已经下载好的镜像,导出到本地,以备后用。
#作用: 将本地的一个或多个镜像打包保存成本地tar文件 #命令格式: docker save [命令参数][导出镜像名称][本地镜像镜像] #命令参数(OPTIONS): -o, --output string 指定写入的文件名和路径 #导出镜像 :~$ docker save -o nginx.tar nginx导入镜像
#作用: 将save命令打包的镜像导入本地镜像库中 #导入镜像命令格式: $ docker load [命令参数][被导入镜像压缩文件的名称] $ docker load < [被导入镜像压缩文件的名称] $ docker load --input [被导入镜像压缩文件的名称]历史、创建
#作用: 查看本地一个镜像的历史(历史分层)信息 #查看镜像命令格式: docker history [镜像名称]:[镜像版本] docker history [镜像ID]镜像详细信息
#作用: 查看本地一个或多个镜像的详细信息 #命令格式: $ docker image inspect [命令参数] [镜像名称]:[镜像版本] $ docker inspect [命令参数] [镜像ID] #查看镜像详细信息: $ docker inspect nginx根据模板创建镜像
#登录系统模板镜像网站: #https://download.openvz.org/template/precreated/ #找到一个镜像模板进行下载,比如说ubuntu-16.04-x86_64.tar.gz,地址为: #https://download.openvz.org/template/precreated/ubuntu-16.04-x86_64.tar.gz #命令格式: cat 模板文件名.tar | docker import - [自定义镜像名] #演示效果: $ cat ubuntu-16.04-x86_64.tar.gz | docker import - ubuntu-mini



