今天你docker了吗?

Docker是近10年来最火的工具之一,从一接触Docker开始就被它的概念所吸引,小结Docker概念、使用以及相关工具

简介

Docker是一个开发、发布和运行应用程序的开放平台,提供了在松散隔离的环境(称为容器)中打包和运行应用程序的能力。利用Docker可以将应用程序与基础架构分离,能够统一应用程序运行环境,保证快速的发布、测试和部署

相比于VMWare独立运行完整的操作系统,Docker容器共享主机内核,其实现占用更少的内存,不过因此在Linux系统上的Docker容器无法运行Windows系统

用途

Docker提供了在多平台(Linux/Windows/IOS)下的运行程序,但是最主要的还是基于Linux系统的操作。我在Ubuntu系统上面主要利用Docker进行两个方面的使用

  1. 运行GUI应用
  2. 统一开发环境

运行GUI应用

通过Docker安装GUI应用,能够隔离各个运行环境,避免依赖冲突和依赖爆炸,并且有利于快速移植和部署

当前已实现的Docker GUI应用,包括wechat/qq/wps/thunder等等

统一开发环境

通过Docker配置开发环境,能够保证开发、测试和发布的一致性,并且能够加速产品的移植和部署

管理

越来越多的容器运行在系统上,除了通过docker-cli进行直接管理外,还有一些工具可以进行容器编排

  • Docker Compose:定义和运行多容器的Docker工具
  • Docker SwarmDocker官方提供的容器集群管理工具,其主要作用是把若干台Docker主机抽象为一个整体,并且通过一个入口统一管理这些Docker主机上的各种Docker资源
  • K8S:基于容器的集群管理平台,全称是kubernetes

小结

使用Docker1个半月了,花费了不少时间学习Docker容器的制作,后续还需要继续了解容器编排工具的使用

随着对Docker学习的深入,更加坚信这项工具对于软件开发的用处。未来的Docker会成为基础工具,类似Linux系统一样,加速信息服务在各个领域的应用

相关阅读