一、Docker 简介
Docker是一种容器技术,它可以将应用和环境等进行打包,形成一个独立的应用。Docker技术经常被拿来和虚拟机技术进行对比,其实可以将docker容器看成是一个简易的针对于某一特定应用定制成的虚拟机,虚拟机中只提供该应用所需的系统资源。Docker的优势在于,它可以在更细的粒度上进行资源的管理,也比虚拟化技术更加节约资源,启动一台虚拟机需要几分钟,而docker容器是秒级启动。
二、Docker相关概念
- 仓库(Repository):仓库可看成一个代码控制中心,用来保存镜像。
- 镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。
- 容器(Container):容器可以看成是镜像的实例,镜像是容器的静止状态,而容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。
三、docker安装
1、安装所需的软件包。yum-utils 提供了 yum-config-manager ,并且 device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
2、设置稳定的仓库
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3、安装最新版本的 Docker Engine-Community ,执行该命令时,会自动下载docker的服务器端和客户端,安装完成后输入docker version 即可查看
yum install docker-ce
4、启动docker
systemctl start docker
5、设置开机自动启动
systemctl enable docker
6、在默认情况下,docker会去国外的中央仓库中拉取镜像,这样下载镜像会非常的慢,因此需要设置镜像加速器,登录阿里云官网,搜索容器镜像服务,然后点击左方列表中的镜像加速器,即可获得你的镜像加速器地址,并执行下面的命令
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://xxxxxx.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
四、Docker的简单使用
- docker :列举出docker中的所有命令及简单的功能描述
- docker search image_name:在镜像仓库中搜索该名称的镜像
- docker pull image_name:tag : 从镜像仓库中拉取相应镜像,tag为镜像的版本号,也可省略,若省略则默认拉取最新版镜像;
- docker images:列出当前主机上的所有镜像;
- docker run image:创建一个新的容器并运行一个命令,若所指定的镜像不存在,则会先执行镜像拉取,再运行镜像
- docker start container:启动容器,成功启动后返回该容器id;
- docker stop container:停止运行容器,成功停止后返回该容器id;
- docker rm container:删除容器,若要删除运行中的容器,可加参数 -f 进行强制删除,可列出多个容器id,用空格隔开即可一次删除多个容器,删除成功时会返回该 容器id;
- docker rmi image:删除镜像文件,可列出多个镜像id,用空格隔开即可一次删除多个镜像,若该镜像有容器正在运行中或者该镜像作为某一运行容器中的基础镜像,则无法删除;
- docker ps:列举出所有运行中的容器,若要显示所有的容器,可加上参数 -a;
- docker exec -it containerId /bin/bash:进入容器,进入后可以就是一个简版的linux操作系统,它只有最基本的命令。
以上为docker入门学习过程中常用的一些命令,在后面的总结中会对docker的命令及参数的功能描述做一个汇总说明。