Docker 是世界领先的软件容器平台。开发人员利用 Docker 可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用 Docker 可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用 Docker 可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为 Linux 和 Windows Server 应用发布新功能。
0|1认识容器
有了容器,就可以将软件运行所需的所有资源打包到一个隔离的容器中。容器与虚拟机不同,不需要捆绑一整套操作系统,只需要软件工作所需的库资源和设置。系统因此而变得高效、轻量、自给自足,还能保证部署在任何环境中的软件都能始终如一地运行。
以上是官方的解释。嗯,看完是不是仍然一脸懵逼,不要紧,我们先看来一张图:
推荐 先记忆 后理解,记忆什么?Docker组成的三个基本概念:
镜像 (Image):Docker 镜像可以看作是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。镜像不包含任何动态数据,其内容在构建之后也不会被改变。
容器(Container):容器镜像是轻量的、可执行的独立软件包,包含软件运行所需的所有内容:代码、运行时环境、系统工具、系统库和设置。
仓库(Repository):如果你使用过git和github就很容易理解Docker的仓库概念。Docker 仓库的概念跟Git 类似,注册服务器可以理解为 GitHub 这样的托管服务。
Docker 仓库是用来包含镜像的位置,Docker提供一个注册服务器(Register)来保存多个仓库,每个仓库又可以包含多个具备不同tag的镜像。Docker运行中使用的默认仓库是 Docker Hub 公共仓库。
仓库支持的操作类似git,当用户创建了自己的镜像之后就可以使用 push 命令将它上传到公有或者私有仓库,这样下次在另外一台机器上使用这个镜像时候,只需要从仓库上 pull 下来就可以了
我们来看一下Docker的生命周期:
如上图所示,容器是由镜像实例化而来的,这和我们学习的面向对象的概念十分相似,我们可以把镜像
想象成类
,把容器
想象成类经过实例化后的对象
,先有了”镜像类”,然后可以实例化多个不同的容器1,容器2、容器3……,这样就非常好理解镜像和容器的关系了。
2|0安装Docker-CE
2|1 CentOS安装
⑴卸载旧版本(较旧版本的Docker被称为docker
或docker-engine
。如果已安装这些,请卸载它们以及相关的依赖项。)
$ sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-selinux \ docker-engine-selinux \ docker-engine
已安装docker,会进行删除操作:
⑵安装docker -ce(社区免费版)
安装方式,使用存储库安装,在新主机上首次安装Docker CE之前,需要设置Docker存储库。之后,可以从存储库安装和更新Docker。
安装所需的包。yum-utils
提供了yum-config-manager
效用,并device-mapper-persistent-data
和lvm2
由需要 devicemapper
存储驱动程序。
$ sudo yum install -y yum-utils \ device-mapper-persistent-data \ lvm2
⑶使用以下命令设置稳定存储库。即使还想从边缘或测试存储库安装构建,始终需要稳定的存储 库
$ sudo yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo
⑷可选:启用边缘和测试存储库。这些存储库包含在docker.repo
上面的文件中,但默认情况下处于禁用状态。可以将它们与稳定存储库一起启用。
$ sudo yum-config-manager --enable docker-ce-edge $ sudo yum-config-manager --enable docker-ce-test //您可以通过运行带有标志的命令来禁用边缘或测试存储库 。要重新启用它,请使用该标志。以下命令禁用边缘存储库。yum-config-manager--disable--enable $ sudo yum-config-manager --disable docker-ce-edge //注意:从Docker 17.06开始,稳定版本也会被推送到边缘并测试存储库。
⑸安装最新版本的Docker CE
$ sudo yum install docker-ce
⑹启动Docker
$ sudo systemctl start docker
⑺docker
通过运行hello-world
映像验证是否已正确安装
$ sudo docker run hello-world
至此,docker在CentOS上的安装已经全部完成,我们可以查看下当前安装的docker版本信息
2|2Windows安装
https://docs.docker.com/docker-for-windows/install/
3|0Docker常用命令汇总
未完待续。。。docker全套VIP课程资源可以加入.NET全栈开发群 免费获取,群号:523490820