docker好难用啊!为啥说它移植性好?

简介: docker好难用啊!为啥说它移植性好?

刚刚接触docker,真的好麻烦啊,不明白为什么要选择docker,我都搞了两天还在搭环境,又告诉我Windows版本过低不适配docker,转而在Ubuntu里装docker,然后MySQL、php、Nginx又得重新装一遍。。。好麻烦啊

1 用的人越多,越需傻瓜式操作

就不说docker了,以前有一次做项目,全国42个机构要安装,我做了很详细的文档,100页(根据各单位实际情况要求改ip,改端口,改路径盘符,改管理员密码,改虚拟机名称,更新各自的许可证等),自己试了好多次,确认没问题,最后一次全国范围的培训,看了下大家的情况,真心觉得技术参差不齐,最后决定发虚拟机:

  • 一个VMware的版本
  • 一个hyperv的版本

把文档缩成三页,七步。终于顺利完成。太香了!配置的人痛苦,接电话解决配置问题的人更痛苦!

2 文档真这么长???

nginx这些算框架、中间件,如果买你软件的人也是在你软件的基础上做二次开发,那1万页、几十万页的文档才是正常情况(大型企业级软件的使用手册就是这样)。


但如果买你软件是为了直接使用,那你就必须保证软件可以傻瓜式一键安装成功。如果每个项目的需求不同需要定制、裁剪,那正确做法应该是设置交付岗位,由专业的交付工程师根据合同要求来给客户安装硬件和软件,并通过验收测试。


3 显然没被环境毒打过

之前复现一篇论文,按照说明文档的要求配了无数遍的环境,发了无数封邮件给作者,前后历时大概一周,最后作者终于甩给我一个镜像,不到半小时就搞定了。当时我就觉得,要没有docker,我这辈子应该都弄不出来。

任何饱受配环境折磨的人最终都会由衷赞叹“docker 真香”。

可以通过直接看dockerfile 还可以知道自己搞的环境和作者搞的环境究竟哪里不同

4 真香定律

不知道你的身份角色。

  • 若是偏运维,你之后会明白的,等你的用户和领导要求你同一台机器上同时安装很多不同版本的php、安装不同版本的nginx时,你就知道麻烦了
  • 若是偏开发,你去求别人在服务器上安装依赖时就知道了,你青睐ubuntu而运维说服务器只能是centos时你就知道差异了

docker正是调和这个矛盾的利器。开发部门将软件以及软件所有的依赖全部封装到一个镜像里,爱用debian用debian,爱用alpine也可以, 爱装java11就尽情用。这些真不香么?

运维部分呢,只需要拿到镜像,设置好网络和服务器资源就可以了, 软件依赖再也与你无关,不香么?


5 总结

docker 其实本质就是一个跨平台安装包,新一代安装神器,非要上理论扯些容器,虚拟化啥的,反而搞的玄乎。

目录
相关文章
|
弹性计算 监控 开发者
利用Docker容器化构建可移植的分布式应用程序
利用Docker容器化构建可移植的分布式应用程序
142 0
|
3月前
|
缓存 开发者 Docker
Dockerfile是Docker容器化过程中的核心组件,它允许开发者以一种可重复、可移植的方式自动化地构建Docker镜像
【8月更文挑战第19天】Dockerfile是构建Docker镜像的脚本文件,含一系列指令定义镜像构建步骤。每条大写指令后跟至少一个参数,按序执行,每执行一条指令即生成新的镜像层。常用指令包括:FROM指定基础镜像;RUN执行构建命令;EXPOSE开放端口;CMD指定容器启动行为等。优化策略涉及减少镜像层数、选择轻量基础镜像、利用缓存及清理冗余文件。示例:基于Python应用的Dockerfile包括设置工作目录、复制文件、安装依赖等步骤。掌握Dockerfile有助于高效自动化构建镜像,加速应用部署。
34 1
|
6月前
|
算法 计算机视觉 Docker
Docker容器中的OpenCV:轻松构建可移植的计算机视觉环境
Docker容器中的OpenCV:轻松构建可移植的计算机视觉环境
101 3
Docker容器中的OpenCV:轻松构建可移植的计算机视觉环境
|
5月前
|
存储 安全 Java
Docker:让应用程序轻松移植到任何地方的利器
Docker:让应用程序轻松移植到任何地方的利器
|
存储 负载均衡 Java
Docker:让应用程序轻松移植到任何地方的利器(下)
Docker:让应用程序轻松移植到任何地方的利器
|
6月前
|
算法 计算机视觉 Docker
Docker容器中的OpenCV:轻松构建可移植的计算机视觉环境
Docker容器中的OpenCV:轻松构建可移植的计算机视觉环境
|
Ubuntu Linux 数据处理
Docker学习笔记丨可以快速移植重复使用的生信软件安装解决方案,助力解决软件安装难题
Docker学习笔记丨可以快速移植重复使用的生信软件安装解决方案,助力解决软件安装难题
|
存储 安全 Java
Docker:让应用程序轻松移植到任何地方的利器(中)
Docker:让应用程序轻松移植到任何地方的利器
|
存储 安全 Java
Docker:让应用程序轻松移植到任何地方的利器(上)
Docker:让应用程序轻松移植到任何地方的利器
|
测试技术 应用服务中间件 持续交付
Docker五大优势:持续集成、版本控制、可移植性、隔离性和安全性
本文讲的是Docker五大优势:持续集成、版本控制、可移植性、隔离性和安全性,【编者的话】 随着Docker技术的不断成熟,越来越多的企业开始考虑使用Docker。Docker有很多的优势,本文主要讲述了Docker的五个最重要优势,即持续集成、版本控制、可移植性、隔离性和安全性。
1988 0
下一篇
无影云桌面