Docker自从诞生以来就一直备受追捧,学习Docker是一件很炫酷、很有意思的事情。我希望通过这篇文章能够让大家快速地入门Docker,并有一些学习成果来激发自己的学习兴趣。我也只是一个在Docker这条巨鲸上玩耍的小孩,全文如有不明确、不正确的地方,还请斧正。
Docker简介
思想
集装箱
标准化
运输方式
存储方式
API接口
隔离
Docker镜像
所谓镜像就是程序运行的环境的只读版本。其包含了所有程序的依赖软件和配置。构建镜像的过程有些类似于在常规部署当中装系统、配环境的过程。注意,镜像是只读的,因此在构建镜像过程中不应该放入需要频繁修改的文件和配置。比如我们自行开发的应用程序可能需要不断的升级,则不适合放入镜像中。
镜像的分层
镜像是分层的。任何镜像都是基于一个基本镜像(如:linux某个版本的内核)逐步构建而成。镜像是只读的,在构建自定义镜像的过程中,每一步安装和配置都是在上一个镜像的基础上叠加一层形成新的镜像的过程。
获取基础镜像
可以从Docker Hub上下载自己需要的基础镜像,其中包含大量的官方镜像。具体使用方法可参照Docker命令一节。
Docker容器
容器是镜像本身和叠加于镜像之上的一个读写层。应用程序仅能运行于容器之中。应用程序在容器中对系统所做的修改将仅体现在读写层,而并不会影响到其下面的镜像层。值得注意的是,一个容器的存储空间是受限的。所以并不适合将应用程序的持久化功能放入容器当中。可以通过挂载外部路径的方式将持久化数据保存在容器以外。
Docker仓库
Ubuntu上安装Docker
Docker的基础是Linux容器技术,因此学习Docker最好是使用Linux。这里推荐64位Ubuntu系统。
在Ubuntu中只需要运行一行命令即可实现Docker的安装:
sudo apt-get install docker.io
运行完后,可以在终端输入docker看到下面的界面证明我们安装成功了(注:提示权限问题就添加sudo,下文同):
从上图可以看到,Docker的命令并不多,只有三十几个。例如我们可以输入docker info来查看我们安装的Docker信息:
运行容器
安装好之后,我们就可以来开始Docker之旅了,
我们现在的Docker还是一个”裸”Docker,上面没有容器,等一下,什么是容器?所谓容器就是Docker中用来运行应用的,D