Docker是一个供开发人员和系统管理员通过容器的方式构建、运行和共享应用程序的平台,通过容器的方式部署应用(打包成标准化单元,类似于一个集装箱),具有安全、灵活、轻量、松耦合、可移植、可扩展等特点。
概念:
仓库(Repository):用于集中存放镜像文件的地方(官方仓库是Docker Hub)。
镜像(Image):提供容器交互的系统文件(代码或二进制文件、运行时依赖及其他所需的系统文件),类似于一个root文件系统。
容器(Container):与主机和其他容器隔离的实例(本质上来讲是一个进程)。
容器与虚拟机的区别:
前者虚拟的是操作系统,共享主机系统的内核,是一个应用层抽象;而后者虚拟的是物理硬件,各自包含一套操作系统,是一个物理层抽象。
官网地址:https://www.docker.com
安装文档地址:https://docs.docker.com/engine/install/centos/
说明:官方提供社区版及企业版,本文档采用社区版讲解(docker-ce社区版,docker-ee企业版)。
1.查看系统配置(建议使用CentOS 7 ,内核版本为3.10以上)
#系统版本:
cat /etc/redhat-release
#内核信息:
uname -r
2.若已安装旧版本的docker 或 docker-engine,使用如下命令卸载(可选)
sudo yum remove docker
docker-client
docker-client-latest
docker-common
docker-latest
docker-latest-logrotate
docker-logrotate
docker-engine
3.设置存储库
#安装依赖工具
sudo yum install -y yum-utils
device-mapper-persistent-data
lvm2
备注:yum-utils提供yum-config-manager的支持,从而进行yum相关配置的管理,device-mapper-persistent-data和lvm2 被devicemapper存储驱动所需要。
#设置yum源(软件仓库)
sudo yum-config-manager --add-repo
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
官方仓库:https://download.docker.com/linux/centos/docker-ce.repo
阿里仓库:http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
4.查看当前仓库中docker-ce的全部版本(可选)
sudo yum list docker-ce --showduplicates | sort -r
备注:版本号为":"与"-"间内容,相对于您的CentOS版本。
5.安装docker-ce
#最新版本
sudo yum -y install docker-ce docker-ce-cli containerd.io
#指定版本
sudo yum install docker-ce- docker-ce-cli- containerd.io
备注:本文安装的是最新版本,其他版本可指定版本号(如docker-ce-19.03.0)
6.启动docker
sudo systemctl start docker
备注: 启动:systemctl start docker 停止:systemctl stop docker 重启:systemctl restart docker
7.测试docker
sudo docker run hello-world
备注:如果docker安装成功,则下载镜像并运行容器,输出Hello from Docker!。
8.查看docker版本(可选)
sudo docker version
9.设置开机自启动
sudo systemctl enable docker
备注:docker 镜像、容器、日志等默认存储路径为/var/lib/docker,可以通过修改docker.service文件进行重置(即在ExecStart后添加--graph指定新目录,执行systemctl daemon-reload 、systemctl restart docker命令,重新加载配置文件并重启docker服务),修改后可通过docker info进行查看。