美文网首页
docker已老, 函数式运维才是未来-01:springboo

docker已老, 函数式运维才是未来-01:springboo

作者: larluo_罗浩 | 来源:发表于2018-08-01 23:02 被阅读2200次

    经常上线部署代码的人会知道,版本是个很头疼的问题,环境也是很头疼的问题。
    这些是很简单的问题,但是总避免不了。
    为啥 ?因为人总是会犯错误的。

    不要太相信人类,代码才是最公正的。

    所以 有人喜欢docker,但是docker实在是太复杂了。
    为啥 需要虚拟化,为啥 你需要挂载?

    你真正需要的,的确是函数式运维!

    什么是函数式运维?

    在函数式运维的体系里面,软件包即值,配置即状态。
    软件包是不可变的,稍弱改动软件包之后产生了一个新的软件包。

    那么函数式运维有啥好处呢?

    由于软件包无状态,配置即状态 ,所以很轻松建立了配置驱动编程的体系。
    对于配置,加上严格的版本控制,自然就有了代码即文档的效果。
    由于软件包即值,配置多版本管理,从一个环境传递到另一个环境是那么自然 。
    对于软件的多版本,即是不同的值那么简单。
    由于函数式的不可变,中间过程相同输入产生的输入只用处理一次,后续可复用。
    如果服务器直接提供二进制构建,即不需要源码构建进行软件包安装,
    否则重新编译一次后续复用,大大提高构建效率。

    如果没有函数式运维你会难受么?

    肯定会有那么一天的。
    如果你安装hadoop,并且没有网,或者系统库版本不一致。
    突然系统找不到protobuf,找不到zlib库,你会心慌吗?
    怕不怕sudo一下把系统搞挂掉?敢不敢用root权限操作一把?

    函数式运维比docker好在哪里?

    无须虚拟化! 再说一遍!
    无须学习新技术,只需要学习简单命令行及简单的nix函数式编程!
    不与系统任何底层交互,仅仅只是文件拷贝,天然绿色环保无公害!
    将网络与构建过程分离,通过hash值仅需下载一次,使构建无副作用!
    真正的多版本支持!同一版本,任何改动,产生新的软件包。
    何止多版本,还有版本依赖管理 ,nix简直强大到没朋友!
    docker,滚粗吧。

    说了这么多废话,应该有点效果,那么开始正题吧。

    且听老夫讲解springboot如何轻松轻松一键构建并发布

    第一步: 新建spring boot项目

    image.png
    image.png

    第二步: 下载依赖并运行

    image.png
    image.png
    image.png

    第三步: 打包并运行

    image.png
    image.png
    image.png

    第四步: 上传版本控制系统github(gitlab或者svn亦可)

    image.png
    image.png

    准备工作就绪,接下来进行自动化构建

    第一步: 编写构建脚本

    image.png

    第二步: 运行构建

    image.png image.png image.png

    第三步: 导出软件包

    查看依赖:

    image.png

    一键导出所有依赖

    image.png

    第四步: 导入软件包到远程服务器,搞定收工(普通用户亦可)

    image.png image.png image.png

    相关文章

      网友评论

          本文标题:docker已老, 函数式运维才是未来-01:springboo

          本文链接:https://www.haomeiwen.com/subject/kxtdvftx.html