數人云|聽說大神都在用這25種軟體部署工具,你用過幾種?
不管還是開發和運維都會用到大量的工具,小數之前給大家分享過《20種終極工具,為你的Docker搭建安全防火牆》《從0到1,打造DevOps易用工具鏈(精挑細選27種)》等等,今天又給各位工具控帶來25種軟體部署工具,希望能對各位小夥伴的工作有所增益。
軟體部署工具可以幫助軟體開發團隊更好地編寫代碼,進行測試,讓軟體在其環境中運行並定期更新,軟體部署是一個寬泛的術語,它包含了所有用於使軟體應用程序可用的活動。
軟體部署工具使得發布軟體和更新的過程儘可能的簡單,通常,這些任務是自動的或按計劃的,使軟體開發人員能夠專註於他們最擅長與最熟悉的工作——寫代碼。最好的工具可以使用各種平台和類型的基礎設施,以便簡化在首選環境中的工作流。
軟體部署工具還可以允許開發人員在其項目上進行協作,跟蹤進度,並管理變更,可以使用持續集成和持續部署去部署軟體,為最終用戶提供無縫更新。
選擇一個號的軟體部署工具是一個很棘手的問題,因為對一個開發團隊來說,對於他們適合的工具可能無法滿足另外一個團隊的需求,本文收集了25個最好的軟體部署工具,用以幫助多個開發團隊簡化他們的工作流程,優化效率以交付質量最高的軟體。
1 ElectricFlow
ElectricFlow Cloud可以幫軟體開發、交付並定時更新的平台,幫助建模、自動化和跟蹤雲原生、容器和遺留應用的部署。
主要特點:
- 構建和部署Microservices
- 查看發布狀態和里程碑日期
- 自動化並跟蹤雲原生、容器和遺留應用程序部署
地址:http://electric-cloud.com/products/electricflow/
2 PDQ Deploy
PDQ Deploy提供了遠程安裝軟體或不定到Windows系統的能力,預構建及時部署包可用於Adobe Flash、Java、Firefox等應用程序,並可用於所有計算機。
主要特點:
- 自定義安裝
- 同時安裝到多個計算機
- 實時狀態監控
地址:https://www.pdq.com/pdq-deploy/
3 Octopus Deploy
Octopus部署是一個自動化系統,旨在簡化ASP的部署,.NET應用程序、Windows服務和資料庫,它是軟體開發人員能夠自動化應用程序部署,無論是在線下還是在雲的環境中。(另:數人云也有一個分散式任務調度平台名為Octopus,提供分散式定時作業、消息調度作業以及本地作業的統一管理。地址:https://www.shurenyun.com/octopus.html)
主要特點:
- 儀錶板顯示部署狀態
- 簡便的安裝
- 在站點或雲服務商自動部署虛擬機
地址:https://octopus.com/
4 Ansible Tower
紅帽的AnsibleTower是一個大型的軟體系統,可以自動化軟體供應、配置管理和軟體部署,幫助擴展IT自動化、管理複雜的部署和生產效率。
主要特點:
- 可視指示板包括:狀態、作業活動和作業快照
- Playbooks允許多個工作流被鏈接在一起
- API和命令行介面工具
- 基於角色的訪問控制
- 作業調度
- 集成的通知
- 圖形化的庫存管理
地址:https://www.ansible.com/tower
5 Chef
Chef可以管理跨伺服器的基礎設施,伺服器基礎結構被視為軟體代碼,而Chef能進行部署更新、管理測試管理版本等工作,通過將基礎設施轉變為靈活可讀可版本可測試的代碼,使用Chef能夠管理任意數量的伺服器。
主要特點:
- 管理數據中心和雲環境作為一個基礎設施
- 快速地將工作負載遷移到雲
- 承諾與任何提供者的集成
地址:https://www.chef.io/chef/
6 AWS CodeDeploy
AWS CodeDeploy是來自Amazon Web的服務,它將代碼自動化部署到任何實例,適用於任何平台、語言和應用,AWS CodeDeploy使快速發布新特性更容易,有助於避免應用部署期間的宕機時間,並處理更新應用的複雜性,AWS CodeDeploy可以自動部署軟體。
主要特點:
- 自動化的、可重複的部署
- 集中控制
- 在部署期間仍然可以訪問應用程序
地址:https://aws.amazon.com/cn/codedeploy/
7 Codeship
Codeship是一個持續集成和交付平台。當代碼庫更新時,它會自動測試並部署任何代碼更改。
主要特點:
- 支持Docker的支持
- 並行部署和測試
- 通過SSH訪問和命令行介面進行調試
地址:https://codeship.com/
8 AppVeyor
ppVeyor是一個持續集成和交付雲服務且可以使用自動測試的窗口化工具。
主要特點:
- 無需安裝或維護
- 開發人員使用UI或YAML構建Configs
- 快速建立在專用硬體和SSD驅動器上
- 多分支的構建
- 工作人員和社區支持
- 現收現付價格
地址:https://www.appveyor.com/
9 Bamboo
Atlassian的Bamboo是一個持續集成伺服器,可以自動化應用程序和通用軟體的發布管理,允許團隊建立一個流水線的構建交付。它將自動化的構建、測試和發布與集成的工作流聯繫起來。移動開發者可以將他們的應用程序部署回蘋果商店。
主要特點:
- 與許多平台的語言不可知集成
- 專門的代理專註於特定的構建項目
- 完整的報告即將發生的代碼變更和問題
地址:https://www.atlassian.com/software/bamboo
10 CircleCI
CircleCI是一個持續集成和交付平台,它支持Ruby on Rails、Sinatra、Node、Python、PHP、Java和Clojure。可以使用持續集成和持續交付來自動化軟體開發過程。
主要特點:
- 完全自定義的構建環境
- 可定製的自定義儀錶板
- 與AWS、Heroku、谷歌雲以及其他的集成
- 使用SSH或本地構建進行調試
地址:https://circleci.com/
11 Travis CI
Travis CI是一個開源的持續集成服務,它可以自動化測試和部署GitHub項目中的代碼。
主要特點:
- Linux、Mac和iOS支持
- 運行時可查看測試
- 通過電子郵件、Hipchat或Slack進行通知
- 廣泛的編程語言的選擇支持
- Linux、Mac和iOS支持
- API和命令行介面可用
地址:https://travis-ci.com/
12 Distelli
Distelli是一組專門用於Kubernetes集群的軟體部署工具,但可以與任何雲服務或物理伺服器一起使用。
主要特點:
- 自動構建Docker映像
- 自動化軟體部署
- 將軟體推向多個雲
地址:https://www.distelli.com/
13 Jenkins
Jenkins在一個開源的自動化伺服器上提供持續交付和持續交付工具。插件結構支持構建、部署和自動化軟體項目。Jenkins可以輕鬆地跨多個機器分布工作,幫助驅動構建、測試和跨多個平台的部署更快。
主要特點:
- 數以百計的可用插件
- 持續集成和持續交付
- 簡單的安裝和配置
- 安裝包可用於Windows、Mac OS X和其他類似unix的操作系統
- Web界面提供了簡單的配置和錯誤檢查
地址:https://jenkins.io/
14 Codenvy
Codenvy是一個在防火牆後面運行的開發人員工作區,可以將軟體部署到數據中心或任何雲。團隊可以開發可移植Docker運行時的代碼。
主要特點:
- 支持Docker的環境
- 在任何操作系統上與用戶共享工作區
- 使用桌面編輯器或瀏覽器IDE開發
- 定義團隊的資源限制
地址:https://codenvy.com/
15 Deploybot
DeployBot是一個自動化的軟體部署應用程序,它將代碼從GIT倉庫部署到任何地方。部署可以自動或手動觸發,在部署過程中,可以使用預定義的或完全自定義的Docker容器在伺服器上執行或編譯代碼。
主要特點:
- API託管在為每個客戶服務的DeployBot子域上
- 預定義或自定義Docker容器可用
- 能夠回滾有問題的版本
- 當代碼準備好時觸發部署
地址:https://deploybot.com/
16 UrbanCode Deploy
IBM的UrbanCode部署是一個應用程序發布自動化工具,它可以自動化軟體部署到本地和基於雲的環境。該軟體允許在需要的時候(按需或按進度)對分散式數據中心、雲和虛擬環境進行無縫部署。
主要特點:
- 自動化部署
- 過程可以通過拖放介面來構建
- 企業級安全性和可伸縮性
地址:https://www.ibm.com/us-en/marketplace/application-release-automation
17 TeamCity
JetBrains的TeamCity是一個持續集成和軟體部署伺服器,伺服器和代理都有Docker鏡像。它提供了廣泛的面向開發的特性,以將團隊性能提升到下一個級別。可以從超過100個隨時可用的插件中添加特殊的附加功能。
主要特點:
- 從安裝開始幾分鐘內開始
- 支持沒有插件或修改的第三方工具
- 全面的版本控制系統
- 定製和擴展伺服器
地址:https://www.jetbrains.com/teamcity/
18 Buildbot
Buildbot是一個作業調度平台,可以用來自動化軟體構建、測試和發布。它可以自動化軟體開發的所有階段。
主要特點:
- 跨多個平台並行執行
- 開源平台
- 與所有主要操作系統兼容
地址:https://buildbot.net/
19 GoCD
ThoughtWorks的GoCD是一個開放源碼的連續交付工具,可以處理持續集成、測試和軟體部署。
主要特點:
- 嵌入式資料庫是可擴展的,帶有PostgreSQL addon
- 企業工具插件
- 所有錯誤修復和安全補丁的通知
- 完全支持所有定價層
地址:https://www.thoughtworks.com/go/
20 Microsoft Team Foundation Server
Microsoft Team Foundation Server是一組協作軟體開發工具,用於共享代碼和ship軟體。它集成了現有的IDE或編輯器,使跨功能團隊能夠有效地工作於各種大小的軟體項目。
主要特點:
- 版本控制
- 與敏捷流程集成
- 使用任何編程語言或IDE
- 自動化部署和跟蹤
地址:ttps://http://www.visualstudio.com/zh-hans/tfs/
21 Automic
來自CA技術的自動化將軟體開發和持續集成工具應用於後端系統。這使得軟體開發在敏捷和穩定的環境中發生。
主要特點:
- 自動化持續交付和發布管理
- 完整的堆棧交付
- 插件市場來幫助定製工具
- 提供Siebel伺服器和補丁
地址:https://automic.com/products/application-release-automation
22 RapidDeploy
MidVision的RapidDeploy是一個用於DevOps團隊和企業持續交付的軟體部署和發布自動化工具。它始終提供高容量的部署,允許組織在不影響質量的情況下加速發布周期。
主要特點:
- 無需編寫代碼就可以自動化進程
- 管理任務的圖形界面
- 發布管道允許用戶管理多個項目和目標
23 JuJu
Canonical的JuJu自動化雲基礎設施和部署應用程序架構。該工具使用符咒、腳本集合,簡化配置、管理、維護、部署和可伸縮性。
主要特點:
- 部署到所有主要的雲提供商或私有硬體
- 尺度對需求
- 開放源碼操作代碼
- 與Kubernetes或即時Hadoop與Spark一起工作
地址:https://jujucharms.com/
24 Drone.io
http://Drone.io是雲端的一個持續集成和部署服務,它的目的是自動構建、測試和部署您的代碼,無需人工幫助。
主要特點:
- 與Github、Bitbucket、Heroku等無縫集成
- 開源
- 添加功能和插件
- 通過電子郵件、Hipchat和Slack的通知
地址:https://drone.io/
25 數人云Octopus
及本地作業的統一管理。Octopus 基於數人云 DataMan OS 容器雲平台,傳統的定時作業程序可以無縫遷移到容器雲上運行,通過取代傳統的Linux Cron/Spring Batch Job/Quartz,做到分散式環境下批量作業任務的全域統一配置,統一監控,任務高可用以及分片並行。
主要特點:
無縫代替 Linux Cron Job 分散式任務調度 本地任務調度 消息任務調度
地址:https://www.shurenyun.com/octopus.html
選擇合適的軟體部署工具可以對團隊的生產力產生實質性的影響。
以上是數人云今天給大家分享的內容,希望對大家有所幫助,工具只是一方面,更主要是自身的知識儲備,愛學習的人運氣都不會差哦~
推薦閱讀:
※多台雲主機的如何實現一鍵自動部署發布?
※一位老極客的眼中的開發和部署
※各位有什麼提高前端部署速度的經驗呢?
※Python項目自動化部署之一:舉個栗子
※docker 必備 — marathon 基礎教程
TAG:部署 |