简介
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口,属于操作系统层面的虚拟化技术,由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器。
官网:https://www.docker.com/
docker安装:https://www.runoob.com/docker/centos-docker-install.html
基本概念
镜像(Image):
docker镜像按照来源分为两种,一种是公共镜像,由docker官方提供;一种是私有镜像,自研镜像。我们通过镜像的名称和版本号来区分不同的镜像,官方镜像的tag通常与版本号一致,但是最新镜像的tag一般为latest,这里建议登陆到容器中,直接查询软件的版本。
容器(Container):
镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。
容器是执行具体任务的;拉起容器的时候通过配置启动参数或者挂载配置文件,可以实现对容器的定制。
仓库(repository)
仓库可看着一个代码控制中心,用来保存镜像。
docker仓库是用来管理docker镜像的,包括镜像的上传、下载和版本管理,类似于yum源的概念;仓库可分为官方仓库和私有仓库,官方仓库是由docker官方管理的,国内有对应的镜像节点可供加速,私有仓库则是由非官方的组织或个人维护。
Habor是企业常用的开源的容器镜像仓库。
基本操作
一.镜像常用
1.获取镜像
dokcer pull 镜像名字:tag
没有tag时 默认是laster
eg:
docker pull ubuntu (如果我们本地没有 ubuntu 镜像,我们可以使用 docker pull 命令来载入 ubuntu 镜像:)
2.查看镜像信息
a.列出镜像
docker images
注:–digests=true 显示摘要
b.列出容器信息
docker tag 镜像:原tag 镜像:新tag
c.使用inspect查看详细信息
docker inspect 镜像名称:tag
3.删除镜像
docker rmi 镜像:tag
4.创建镜像
docker commit 容器id 镜像:tag
5.将镜像文件保存为tar文件
docker save 镜像名 >备份文件.tar
6.将tar文件恢复成镜像
docker load <备份文件.tar
二.容器常用
1.新建并启动容器
docker run -itd --name=test centos:7 /usr/sbin/init
-i: 交互式操作。
-t: 终端。
-d: 默认不会进入容器,想要进入容器需要使用指令 docker exec
2.进入容器
docker ps -a
dokcer exec -it container_id /bin/bash
3.查看容器信息
dokcer ps -a
docker inspect 容器名字
4.启动容器
docker start 容器名字
5.停止容器
docker stop 容器名字
6.删除容器
docker rm 容器名字
7.实现容器的网络端口映射
docker run -d -p 主机端口号(宿主机):容器端口号 centos:7