Docker 有什么优势?

一个人想着一个人 提交于 2021-02-07 00:01:47

前两天,debian 从 8 全新升级到 9(不喜欢 dist-upgrade),要重装 owncloud (debian 9 已经移除 apt源了),打开 owncloud 的安装文档,真他妈的琐碎,要搭建个高可用的 owncloud 起码还要费我两三个小时,于是打开 http://hub.docker.com 立马就找到了一个 owncloud 的 image,我扫了一眼特性,比 owncloud 官方推荐的标准配置强不少:

  • Streamlined Let's Encrypt functionality built right in

  • This will fetch valid, trusted and free SSL certs for your domain and install them into the image!

  • Hurray for green lock icons!

  • Superfast

  • Uses PHP7 with APCu and Zend OpCache for maximum performance

  • Now with image version tags corresponding to OwnCloud release versions

  • So you won't get unexpectedly upgraded and you can safely stay on an OC version you know is working for you

  • Built in (optional) MySQL database server (faster than sqlite default)

  • Or specify your own pre-existing database server during setup

  • Web GUI driven initial setup of user/password/database

  • Based on Arch Linux ensuring everything is cutting edge & up to date

  • SSL (HTTPS) encryption works out-of-the-box

  • Tweaked for maximum security while maintaining compatibility

  • Optionally enable automatic SSL certificate regeneration at runtime for maximum security

  • Or easily incorporate your own SSL certificates

  • In-browser document viewing and editing ready (.odt, .doc, and .docx)

  • In-browser media viewing ready (pretty much everything I think)

  • Comes complete with all of the official ownCloud apps pre-installed:

  • Bookmarks

  • Calendar

  • Contacts

  • Documents

  • Gallery

  • Or install your own 3rd party apps

随便装一下 owncloud糊弄一下的话,很快,但想弄的稳定高效,不是专业sa,每项都要费我不少时间去查阅文档,真不想在这些事情上费时间。看完这些毫不犹豫的把 image 拉下来,设置下内外端口映射和文件夹映射,一条命令就跑起来了,感觉真爽。

以前在大公司,要什么环境发封邮件就行了,后来在小公司,不得不充当半个 SA才感觉事情之繁琐细致。举个例子,搭建 svn server,可能你觉得简单,不就是 apt-get subversion 然后 supervisor 里面配置个 svnserve 的服务就行了么?好,接下来要给 svn 换成 https 的模式可能你就觉得有点烦了,apt-get 下来还有一堆权限和模块要配置,起码半小时,不过还好;如果更进一步,需要针对 ssd 优化 svn 仓库的存储方式,还有每天定时增量备份,每周定期全量备份,备份内容要保存到远程目录,加密压缩,定期删除老的备份保留最近两个月数据,然后支持多仓库,自动同步权限配置并合并更新,有个小网页可以注册svn帐号(需要管理员密码才能操作),可以复位忘记密码的,所有帐号操作有记录,你可能真的要吐血了。

这种环境我搭了四遍,每次都是隔了半年以上忘记的差不多了,又重头开始塔的,第一次完整搭建下来废了我两天。本来偷懒没记笔记,想着搞一次,结果半年后第二次又来一遍,好多东西忘记了,仍然费了我一个整天,还好我这次学乖了记了笔记,第三次第四次半天就搞定了。

现在你再让我搭建一遍我真的想想都怕,后来我搭建了一个干净的 svn虚拟机 image,但是接近1个G,压缩以后也好几百兆,十分累赘,不便于保存和传递,现在好了,制作一个 docker 映像,交给别人用,根本不用啰嗦半天,一条命令,前面配置了那么多的功能,一下就启动起来了。

在我半个 SA生涯里,https + svn 只能算烦,不能算复杂,比较复杂的还有整套 qemu-kvm 的虚拟化环境,linux 物理机上从零搭建起一套类似 vmware 的可视化虚拟环境,可以在网页上点点创建虚拟机,设置虚拟网络,支持网页版 VNC,可以页面上打开虚拟机终端屏幕进行操作系统安装,就像腾讯云阿里云一样,还有一些自动脚本可以用 libvirt 操作虚拟机做一些自动备份迁移的事情。配这么一套环境要想弄得完善,各种网络和系统参数优化到位,从头到尾接近一百多个步骤,这玩意儿,我配第一次挺开心,觉得自己从头到尾弄了一套完全免费的 vmware,结果后面又接着配了俩三次,配一次吐一升血。

除此之外还有各种 mongodb 集群啦,分布式文件系统啊,有了docker以后,都是一句话就搞定的事情。现在觉得 docker 就是来拯救大家的时间的,能够将 SA的经验标准化并固定下来,特别中小团队,上了docker省下你一两个 sa来一点问题都没有。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!