前一段时间,公司的项目做整体重构及迁移到阿里云新的服务器上面,服务端就使用了docker,全年也听朋友说过docker,其实现在的开发模式及公司工种划分,已经没有以前那么明确,以前可能还有专业的运维,现在走的模式叫“devops”,即开发运维,也就说开发人员,要自己搞定服务器配置及项目的部署,反正技多不压身,多了解一些东西,对自己都有好处。

其实docker就是一种轻量化的虚拟机,在上面搭建各种环境,安装各种软件,比起传统虚拟机,docker的优势在于秒启动、打包发布镜像,保证测试正式环境的一致性,知乎上有一篇文章写的很具体,https://www.zhihu.com/question/51134842

docker中,有Image和Container,当时一看到,我就理解到了,就像别人电脑系统有问题,我帮别人重装系统,Image相当于一张光盘或U盘,可能是win7、win10的系统,而Container就相当于容器,类似于一个64位或32位的win7版本分支,最重要的是,直接从docker镜像库拉取镜像,一键创建container,不需要各种乱七八糟的配置,真正的开箱即用。最终也能将自己的容器打包为镜像,部署起来更为方便。

自己就简单折腾了尝试了一下,就不写那么详细了。

首先从官网下载Docker for desktop安装,安装成功后如图:

此时可以看到docker服务已经启动,利用命令行先安装portainer图形化管理工具,安装完成后,浏览器直接访问:localhost:9000,即可看到主界面:

接着为了测试,从官方pull一个mysql及wordpress下来,安装启动成功后,可以在管理界面内看到:

让mysql及wordpress都保持running状态,测试一下:

可以看到数据库处于正常状态并可用;

接下来访问localhost:8080,配置wordpress,并连接至该数据库:

wordpress也能正常使用,也能发布文章。

不用的时候,在portainer中将对应的container停止运行即可:

在image中也能看到下载的几个镜像,都非常小,方便管理,不影响真实环境,完全虚拟化:


尤其在一些业务场景比较复杂的公司内,docker的优势会完全发挥出来,模块化搭配组合,对资源消耗少,实现秒级切换,做前端也不能完全局限于前端,整体业务流程、服务器、后端方面的知识都要有所了解,思想才能走得更高更远~