在 Linux 平台下开发自动化部署工具,是不是 Python 才是最好的选择

2019-02-19 13:34:25 +08:00
 daijinming

在 linux 平台下开发自动化部署工具,是不是 python 才是最好的选择,入手 linux 才半年多,这方面也是才疏学浅,请不吝赐教

4870 次点击
所在节点    程序员
33 条回复
Hieast
2019-02-19 13:40:09 +08:00
我给 python 投一票
liuzuo
2019-02-19 13:41:49 +08:00
我在写 kotlin,其实想用 go。。。。。。
tomczhen
2019-02-19 13:45:22 +08:00
用什么语言主要还是取决于人员和项目,大多数情况下都是有限选择与项目亲和的语言、工具。
webdisk
2019-02-19 13:46:21 +08:00
怎么我觉得 bash shell 好用呢
SsuchingYu
2019-02-19 13:47:19 +08:00
Python, Ruby, Go,都不错。
37Y37
2019-02-19 13:48:41 +08:00
挑自己最熟悉的,如果都没有熟悉的那么 bash,python,go 会是不错的学习选择,我们开发了一系列的运维相关工具,用的 python
daijinming
2019-02-19 13:52:16 +08:00
@37Y37 其实我们这边还真对 python\go,没有熟悉的,对 dotnet core 倒是熟悉,至于这个 bash 能方便的访问消息队列、数据库什么的吗?
daijinming
2019-02-19 13:53:01 +08:00
@tomczhen 你觉得 dotnet core 怎么样
daijinming
2019-02-19 13:54:02 +08:00
@webdisk bash shell 没怎么接触过,能详细的介绍下吗,我这边需要操作文件、访问数据库、消息队列
alvin666
2019-02-19 13:54:32 +08:00
Python 就是一个胶水语言,各种库能干各种语言能干的事,还能很容易地写出一些基本的逻辑,比较适合。
tomczhen
2019-02-19 14:03:18 +08:00
@daijinming PowerShell 应该足够强大了,跨平台需求可以选择 PowerShell core,.net 亲和。由于没有.net core 的具体实践,根据之前接触到情况看,TFS 应该有解决方案,如果不选 TFS 应该可以找一下巨硬相关的最佳实践文档参考一下。
smallgoogle
2019-02-19 14:05:41 +08:00
觉得 go 好用。。。自身部署就简单。
w7938940
2019-02-19 14:07:55 +08:00
Ruby
daijinming
2019-02-19 14:12:42 +08:00
@smallgoogle 这个我倒是听说过,之前就算是后起之秀。用 go 执行 shell 命令,比如调用 docker 这方面的资料是否多那
xomix
2019-02-19 14:24:13 +08:00
其实都可以,但是你 google 一下就知道 python 的资料丰富全面,所以用什么我也不用多说了。
hoyixi
2019-02-19 15:00:04 +08:00
很多自动化工具都是 Ruby 写的~不很复杂的简单任务,可能 Linux Shell 一个小脚本就搞定了,用其它脚本语言反而兜圈子~

没有好不好,关键看适不适合。比如你是 Ruby 程序员,再学个 Python 去写部署?显然不合适~

如果都没啥基础,Python 可能上手快,找现成的资源更容易,而且开发长期维护的、重复使用的、通用工具的话,Shell 可能有点痛苦,Ruby 代码灵活(多人合作的话,如果对该语言熟练程度不够,你看别人代码可能会蛋疼),Python 中规中矩。 个人倾向于 Python~
kzfile
2019-02-19 15:02:24 +08:00
我直接 docker 部署了
GiantHard
2019-02-19 15:12:36 +08:00
我觉得 fake.build 挺好,感觉就是看个人喜好跟团队喜好吧
daijinming
2019-02-19 15:30:11 +08:00
@hoyixi 初学者对于 python 有中奇怪的感觉 ,一般 linux 都预装 python2 ,但是书本都教授 python3,自动化工具采用那个版本比较合适那?另外可能是开发.net 给的想法,python 做自动化工具是开启一个 web 服务那,还是一个控制台应用?
ilgharkus
2019-02-19 16:08:16 +08:00
@daijinming #19
从 2018 年开始,大部分 Linux 发行版预装 Python2 和 Python3。从长远角度来看,推荐使用 python3。
原因请戳这里: https://pythonclock.org/
:-)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/536514

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX