前言
如果想要了解 Docker,就必须要知道 Docker 都包括什么。我们都知道 Docker 技术的目标是实现轻量级的操作系统虚拟化解决方案,将云服务容器化,方便部署和动态伸缩。
正文
任何技术都有自己的专业术语,Docker 也不例外。那么,Docker 都包括哪些内容呢?Docker 包括四个组成元素,分别是镜像 ( Image )、容器 ( Container )、网络 ( Network )、数据卷 ( Volume )。接下来,我们分别介绍。
镜像(Image)
镜像,其实是 Docker 技术的基础,它包含了虚拟环境下运行系统的基础内容。我们可以对镜像的内容进行修改,但是每次修改都会增加一层新的逻辑层,就像俄罗斯套娃一样。但是,每一个镜像都有一个最原始的基础镜像。任何一个镜像都是由其下层所有的镜像逻辑层组合而成的。
正是由于由于这种逻辑结构,Docker 的镜像实质上是无法被修改的,镜像内容会退化删减,但是镜像逻辑层永远都是增加的,永远是产生新的镜像。
在服务器上查看都有哪些容器的命令如下:
docker images
容器 (Container)
容器,我们可以这样理解。他和镜像的关系就像 C++ 中对象和类的关系。容器是依赖镜像产生的。启动的容器可以隔离虚拟环境和物理机的实际环境,这样容器作为一个独立的虚拟系统运行内部特定功能的服务。
在服务器上查看都有哪些容器的命令如下:
docker container ls
网络 (Network)
计算机领域拥有非常多的网络协议,不同的应用都可以依托网络在不同的硬件平台或操作系统平台上进行数据传输,因此具备非常优秀的跨平台优势。
在 Docker 中,实现了强大的网络功能,不仅可以对某个容器的网络进行个性化配置,比如映射端口,将9000端口映射到1234端口,还可以在容器间建立虚拟网络,形成数个容器的“局域网”,同时与其他网络环境相隔离。
比如命令:
docker run -p 9000:1234
数据卷 (Volume)
在 Docker 中,通过挂载的方式进行数据共享或持久化的文件或目录,被称为数据卷 ( Volume )。容器也有可能发生错误,一般情况下,如果容器异常退出,那么其中临时生成的文件很有可能会丢失。还有使用第三方管理工具的时候,比如使用 swagger 部署的容器服务,重启之后容器内容都会被还原。
鉴于上述原因,为了保证数据的可靠性,一般启动容器的时候都会挂载数据的存储路径或存储卷。
比如命令:
docker run -v /usr/docker/nginx/:/usr/share/nginx/ nginx
结尾
Docker 除了这些基础概念之外,还有很多实操内容,感兴趣的小伙伴,赶紧动手尝试吧!晚安,我是 liuzhen007,欢迎评论留言+一键三连。
作者简介:????大家好,我是 Data-Mining(liuzhen007),是一位典型的音视频技术爱好者,前后就职于传统广电巨头和音视频互联网公司,具有丰富的音视频直播和点播相关经验,对 WebRTC、FFmpeg 和 Electron 有非常深入的了解,????公众号:玩转音视频。同时也是 CSDN 博客专家、华为云享专家(共创编辑)、InfoQ 签约作者,欢迎关注我分享更多干货!????