跳到主要內容

臺灣博碩士論文加值系統

(44.212.99.208) 您好!臺灣時間:2024/04/17 19:39
字體大小: 字級放大   字級縮小   預設字形  
回查詢結果 :::

詳目顯示

: 
twitterline
研究生:游恩宇
研究生(外文):En-Yu Yu
論文名稱:基於 Jenkins 的持續集成與交付系統之研究
論文名稱(外文):A Study of CI/CD System Based on Jenkins
指導教授:包蒼龍包蒼龍引用關係
指導教授(外文):Tsang-Long Pao
口試委員:包蒼龍
口試委員(外文):Tsang-Long Pao
口試日期:2022-08-30
學位類別:碩士
校院名稱:大同大學
系所名稱:資訊工程學系(所)
學門:工程學門
學類:電資工程學類
論文種類:學術論文
論文出版年:2022
畢業學年度:110
語文別:中文
論文頁數:43
中文關鍵詞:CI/CDAnsibleJenkins
外文關鍵詞:CI/CDAnsibleJenkins
相關次數:
  • 被引用被引用:0
  • 點閱點閱:132
  • 評分評分:
  • 下載下載:30
  • 收藏至我的研究室書目清單書目收藏:0
著網際網路服務與應用的快速發展,越來越多企業與組織開始以透過網路提供服務,而此趨勢伴隨著更大量的軟體系統開發需求。然而,在傳統的軟體開發模式中,開發時程過長可能無法滿足快速發展的需求。透過將工具集成到一套持續交付與持續部署的系統來培養 DevOps 文化有助於加快開發速度並保持長時間運作。另外,通過在開發過程中引入安全性掃描工具,在早期發現漏洞排除資訊安全威脅能大幅降低資料外洩或資產受損等資安事件發生。本研究結合了不同的工具,形成一套適合中小型團隊開發的持續交付與持續部署系統。此外,集成了容器虛擬化技術可大幅度減少再開發、測試部署階段使用不同環境造成的相容性問題。
With the explosive growth of the Internet technologies and applications, more and more enterprises and organizations provide their businesses and services through the Internet. This trend is accompanied by a larger number of development needs. However, in the traditional development model, the development process is lengthy and may not meet the rapid development needs. Fostering a DevOps culture by integrating tools into a continuous delivery and continuous deployment system helps to speed up the processes. In addition, by introducing the security scanning tools into the development process to detect the vulnerabilities and eliminate information security threats in the early phases will greatly reduce the risk of subsequent data leakage or threats to valuable assets. This research combines various tools to form a continuous delivery and continuous deployment system suitable for small to medium-sized development teams. Furthermore, the integration of container virtualization technology can also greatly reduce the compatibility problems caused by different environments used in the development, testing the deployment phases.
致謝 i
摘要 ii
ABSTRACT iii
目錄 iv
表目錄 vii
圖目錄 viii
第一章 緒論 1
1.1 研究動機 1
1.2 研究目的與問題 1
1.3 研究範圍 2
1.4 論文架構 3
第二章 相關研究與技術 4
2.1 軟體開發生命週期 SDLC 4
2.1.1 瀑布模型 4
2.1.2 敏捷軟體開發 5
2.2 DevOps 5
2.3 安全軟體開發生命週期 SSDLC 6
2.4 Jenkins 9
2.4.1 Jenkins 介紹 9
2.4.2 Jenkins 部署架構 9
2.5 Ansible 10
2.5.1 Ansible 介紹 10
2.5.2 Ansible 部署與架構 11
2.5.3 YAML 11
2.6 OWASP ZAP 網頁安全性測試 13
2.6.1 ZAP 功能 13
2.6.2 ZAP 架構 13
2.7 Docker 14
2.8 相關研究 15
第三章 系統架構設計 17
3.1 系統架構 17
3.2 開發流程示意 18
3.3 Ansible Playbook 19
3.4 儀表板架構 20
3.5 Docker Remote API 20
3.6 ZAP 測試報告 22
第四章 監控與分析 24
4.1 系統平台 24
4.2 系統設定 24
4.2.1 Jenkins 安裝與設定步驟 24
4.2.2 Ansible 安裝 26
4.2.3 Docker 安裝與設定 27
4.3 持續交付與部署工作設定 28
4.4 安全性測試 32
4.5 部署環境的持續監控 35
第五章 結論與未來展望 39
5.1 結論 39
5.2 未來展望 39
參考文獻 40
[1] 110-112 年重點產業人才供需調查及推估結果摘錄,[Online]. Available:https://ws.ndc.gov.tw/001/administrator/18/relfile/6037/9070/fd61bc4a-8351-43c0-bb6d-599b89d81fad.pdf. [Accessed Aug. 20, 2022]
[2] MichaelPage, 台灣軟體行業的未來趨勢,[Online]. Available:https://www.michaelpage.com.tw/zh/advice/careeradvice/career progression/%E5%8F%B0%E7%81%A3%E8%BB%9F%E9%AB%94%E8%A1%8C%E6%A5%AD%E7%9A%84%E6%9C%AA%E4%BE%86%E8%B6%A8%E5%8B%A2. [Accessed Aug. 20, 2022]
[3] 2021 年學校與研究單位成攻擊最頻繁目標,臺灣每週遭攻擊次數是全球平均 3 倍,[Online]. Available:https://www.ithome.com.tw/news/149919. [Accessed Aug. 20, 2022]
[4] Check Point Software’s 2022 Security Report: Global Cyber Pandemic’s
Magnitude Revealed, [Online]. Available:https://www.checkpoint.com/press/2022/check-point-softwares-2022-security report-global-cyber-pandemics-magnitude-revealed/. [Accessed Aug. 20, 2022]
[5] 安全軟體開發生命週期簡介,[Online]. Available:https://iter01.com/644314.html. [Accessed Aug. 20, 2022]
[6] 瀑布模型-Wiki,[Online]. Available:https://zh.wikipedia.org/zh tw/%E7%80%91%E5%B8%83%E6%A8%A1%E5%9E%8B
敏捷軟體開發-Wiki https://zh.wikipedia.org/zh-tw/%E6%95%8F%E6%8D%B7%E8%BD%AF%E4%BB%B6%E5%BC%80%E5%8F%91. [Accessed Aug. 20, 2022]
[7] 什麼是敏捷式開發?[Online]. Available:https://docs.microsoft.com/zh-tw/devops/plan/what-is-agile-development. [Accessed Aug. 20, 2022]
[8] 什麼是 DevOps?[Online]. Available:https://azure.microsoft.com/zh-tw/resources/cloud-computing-dictionary/what is-devops/. [Accessed Aug. 20, 2022]
[9] DevOps for Infrastructure: From VI Admin To DevOps Champion, [Online].Available:https://blogs.vmware.com/management/2020/03/vi-admin-to-devops.html. [Accessed Aug. 20, 2022]
[10] Introduction to Secure Software Development Life Cycle, [Online]. Available:https://resources.infosecinstitute.com/topic/introduction-to-secure-software development-life-cycle/. [Accessed Aug. 20, 2022]
[11] Jenkins (軟體) , [Online]. Available:https://zh.wikipedia.org/zh-tw/Jenkins_(%E8%BD%AF%E4%BB%B6). [Accessed Aug. 20, 2022]
[12] Ansible (software), [Online]. Available:https://en.wikipedia.org/wiki/Ansible_(software). [Accessed Aug. 20, 2022]
[13] Ansible wiki, [Online]. Available:https://ansible.leops.cn/basic/Introduction/. [Accessed Aug. 20, 2022]
[14] YAML, [Online], https://zh.wikipedia.org/zh-tw/YAML. [Accessed Aug. 20, 2022]
[15] Ansible 中文權威指南,[Online]. Available:http://www.ansible.com.cn/docs/playbooks_intro.html. [Accessed Aug. 20, 2022]
[16] ZAP Docker User Guide, [Online]. Available:https://www.zaproxy.org/docs/docker/about/. [Accessed Aug. 20, 2022]
[17] IBM Cloud 學習中心/何謂 Docker?[Online]. Available:https://www.ibm.com/tw-zh/cloud/learn/docker. [Accessed Aug. 20, 2022]
[18] 什麼是 Docker?[Online]. Available:https://aws.amazon.com/tw/docker/. [Accessed Aug. 20, 2022]
[19] Sriniketan Mysari, and Vaibhav Bejgam, "Continuous Integration And Continuous Deployment Pipeline Automation Using Jenkins Ansible,"2020 International Conference on Emerging Trends in Information Technology and Engineering (ic-ETITE), 2020
[20] Jay Shah, Dushyant Dubaria, and John Widhalm, "A Survey of DevOps tools for Networking," 2018 9th IEEE Annual Ubiquitous Computing, Electronics & Mobile Communication Conference (UEMCON), pp. 185-188, 2018
[21] Valentina Armenise, CloudBees, and Brussels, "Continuous Delivery with Jenkins Jenkins Solutions to Implement Continuous Delivery," 2015 IEEE/ACM 3rd International Workshop on Release Engineering, 2015
[22] Artur Cepuc, Robert Botez, Ovidiu Craciun, Iustin-Alexandru Ivanciu, and Virgil Dobrota, "Implementation of a Continuous Integration and Deployment Pipeline for Containerized Applications in Amazon Web Services Using Jenkins, Ansible and Kubernetes," 2020 19th RoEduNet Conference: Networking in Education and Research (RoEduNet), pp.24-27, 2020
[23] Apeksha Deshpande, Veenadevi S. V., and Suresh Aleti, "Test Automation and Continuous Integration using Jenkins for Smart Card OS," 12th ICCCNT 2021,2021
[24] About webhooks, [Online]. Available:https://docs.github.com/en/developers/webhooks-and-events/webhooks/about webhooks. [Accessed Aug. 20, 2022]
[25] Ansible teams PPA, [Online]. Available:https://launchpad.net/~ansible/+archive/ubuntu/ansible. [Accessed Aug. 20, 2022
QRCODE
 
 
 
 
 
                                                                                                                                                                                                                                                                                                                                                                                                               
第一頁 上一頁 下一頁 最後一頁 top