该帖子是从reddit帖子迁移而来的。粗体部分将采用SE格式。

我正在与公司交流以帮助简化/合并其构建过程。他们必须一起做,他们目前的过程令人恐惧。我们已经说服他们选择使用AWS / jenkins / bitbucket / artifactory。

现在,有一家公司希望将fedora的模拟程序用于其构建环境部门和构建工件管理。另一个人希望将docker用于其构建环境,但还没有构建工件解决方案。

我建议将docker(用于构建环境deps)和模拟(用于产品相关工件和deps)的组合用于都。他们嘲笑它。顺便说一句,产品之一是自定义rhel .iso。


两家公司在辩论使用它们的方式上,mock vs docker的优缺点是什么?
我的建议的利弊如何呢?或者什至是一件明智的事情?
其他建议的工具/构建流程可能会更好?我对在行业中会得到持续支持和进步的最佳实践/最常用的方法(构建环境deps mgmt /产品工件dep mgmt)感兴趣?

评论

他们实际上在运送什么软件(台式机?服务器软件?他们自己的SaaS服务)以及用什么语言编写?

#1 楼

Docker将比Mock更知名。我一直看到Docker在我工作的公司中使用。我想我以前见过Mock,但这只是因为我是Fedora用户。

但是,Docker本身并不是构建工具,因此您仍然可以在容器内使用Mock。这是避免“雪花”构建服务器的好方法。通过使用Docker容器,无论使用哪种构建工具,您的构建都是一致的。您可以将Docker标准化为构建平台,而让开发人员选择最佳的构建工具(无论是Mock还是NPM)。

我唯一的建议是在CI服务器,而Docker使这变得非常容易。

这是一个使用Docker进行构建(以及测试和部署)的公司的例子。