Docker核心概念
镜像
容器
仓库
镜像
Docker镜像(Image)类似于虚拟机的镜像,理解为一个面向Docker引擎的只读模板,包含了文件系统
例如:一个镜像可以包含一个完整的Ubuntu操作系统环境,可以把它称为一个Ubuntu镜像。镜像也可以安装Apache应用程序(或用户需要的其他程序),可以把它称为一个Apache镜像。
镜像是创建Docker容器的基础。通过版本管理和增量文件系统,Docker提供了一套十分简单的机制来创建更新现有的镜像,用户甚至可以从网上下载一个已经做好的应用镜像,并通过简单的命令就可以直接使用
Docker容器
Docker容器(Container)类似于一个轻量级的沙箱,Docker利用容器来运行和隔离应用。
容器是从镜像创建的应用运行实例,可以将其启动、开始、停止、删除,而这些容器都是相互隔离、互不可见的。
读者可以把容器看作一个简易版的linux系统环境(这包括root用户、进程空间、用户空间和网络空间),以及运行在其中的的应用程序打包而成的应用盒子。
镜像本身是只读的。容器从镜像启动的时候,Docker会在镜像的最上层创建一个可写层,镜像本身不变,写时复制。
Docker仓库
Docker仓库(Repository)类似于代码仓库,是Docker集中存放镜像文件的场所。
Docker的安装
Ubuntu
- Ubuntu14.04及以上版本
Ubuntu14.04版本官网软件源中已经呆了Docker包,可以直接安装
sudo apt-get update
sudo apt-get install -y docker.io
sudo ln -sf /usr/bin/docker.io /usr/local/bin/docker
sudo sed -i '$acmplete -F _docker docker' /etc/bash_completion.d/docker.io
以上流程使用自带的docker.io安装docker,这样安装的Docker比较旧
获取最新版本的Docker
首先安装apt-transport-https,并添加国内镜像
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
1. 备份系统自带源
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
2. 添加阿里源
vi /etc/apt/sources.list
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
3.更新软件包列表
sudo apt-get update
休复损坏的软件包,尝试卸载出错的包,重新安装正确版本的。
sudo apt-get -f install
升级系统中的所有软件包
sudo apt-get -y upgrade
4.添加阿里docker源
sudo bash -c "echo deb https://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list"
5.升级apt-get
sudo apt-get update
6.安装最新版docker
sudo apt-get install -y lxc-docker --allow-unauthenticated
7.升级到最新版docker
sudo apt-get update -y lxc-docker
centos
1.更新yum到最新
sudo yum update
2.安装需要的软件包,yum-util提供了yum-config-manager功能,其他俩个是devicemapper的驱动依赖
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
3.yum 源设置阿里云
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker- ce/linux/centos/docker-ce.repo
4.安装docker
yum list docker-ce --showduplicates | sort -r //查看版本 sudo yum install docker-ce sudo yum install <版本> # sudo yum install docker-ce-17.12.0.ce
5.安装后查看docker版本
docker -v
验证结果
Docker 的启动与停止
设置docker 仓库的国内镜像
ustc是老牌的linux镜像提供者,不要需要注册直接使用
1)编辑文件
nano /ect/docker/daemon.json
2)在该文件输入内容
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
启动docker:
systemctl start docker
停止docker
systemctl stop docker
重启docker
systemctl restart docker
查看docker状态
systemctl status docker
开机启动
systemctl enable docker
查看docker概要信息
docker info
查看docker帮助文档
docker --help
hello-world镜像
本地没有回去仓库拉取进行然后本地run
docker run hello-world
17181238338.png" alt=“image-20191217181238338” style=“zoom:50%;” />
查看docker帮助文档
docker --help
hello-world镜像
本地没有回去仓库拉取进行然后本地run
docker run hello-world