Dockerization of Continuous Integration for applications developed in Java programming language

Thesis title: Dockerizace Continuous Integration řešení pro aplikace vyvíjené v programovacím jazyce Java
Author: Okosy, Michal
Thesis type: Diplomová práce
Supervisor: Pavlíčková, Jarmila
Opponents: Batelka, Martin
Thesis language: Česky
Abstract:
Diplomová práce „Dockerizace Continuous Integration řešení pro aplikace vyvíjené v programovacím jazyce Java“ se zabývá problematikou Continuous Integration a technologií Docker. Jejím hlavním cílem je analyzovat aplikace a technologie vhodné při použití CI u Java projektů a pomocí platformy Docker implementovat konkrétní řešení, které bude postavené na těchto technologiích.V teoretické části je popsán a analyzován pojem Continuous Integration a s ním související pojmy – Continuous Delivery, Continuous Deployment a DevOps. V souvislosti s Continuous Integration je zde také popsán model kvality softwaru dle norem řady ISO/IEC 250nn, přičemž největší důraz je kladen na jeho dvě charakteristiky – udržovatelnost a přenositelnost.Praktická část je rozdělena do dvou kapitol. První z nich vychází z poznatků v teoretické části. Na jejich základě jsou identifikovány typy aplikací a nástrojů vhodných při aplikování CI na Java projekty. V rámci každého typu jsou aplikace vzájemně porovnány a dále je vybrána ta nejvhodnější. Pro takto vybrané aplikace jsou vytvořeny a propojeny Docker obrazy. Praktickým výstupem práce je CI řešení postavené na technologii Docker vhodné především pro Java projekty.
Keywords: GitLab; SonarQube; Continuous Delivery; Continuous Deployment; Continuous Integration; DevOps; Docker; Jenkins
Thesis title: Dockerization of Continuous Integration for applications developed in Java programming language
Author: Okosy, Michal
Thesis type: Diploma thesis
Supervisor: Pavlíčková, Jarmila
Opponents: Batelka, Martin
Thesis language: Česky
Abstract:
Diploma thesis „Dockerization of Continuous Integration for applications developed in Java programming language“ deals with Continuous Integration and with technology Docker. The main aim of this thesis is to analyze applications and technologies suitable for implementing CI in Java projects and using Docker platform to implement solution, that will be based on analysed technologies.In the theoretical part of the thesis a concept of Continuous Integration is described and analysed together with other similar concepts – Continuous Delivery, Continuous Deployment and DevOps. In the theoretical part there is also described software quality model according to ISO/IEC 250nn, with greatest emphasis being given to its two characteristics – maintainability and portability.The practical part consists of two chapters. First of the two chapters is based on the knowledge described in the theoretical part – there are identified types of applications and tools that are useful in applying CI to Java projects. Within each type, the applications are compared to each other and the most appropriate one is selected. For these selected applications Docker images are created and linked together. Practical output of the work is CI solution based on Docker technology, suitable especially for Java projects.
Keywords: Docker; Continuous Integration; Jenkins; GitLab; SonarQube; Continuous Delivery; DevOps; Continuous Deployment

Information about study

Study programme: Aplikovaná informatika/Informační systémy a technologie
Type of study programme: Magisterský studijní program
Assigned degree: Ing.
Institutions assigning academic degree: Vysoká škola ekonomická v Praze
Faculty: Faculty of Informatics and Statistics
Department: Department of Information Technologies

Information on submission and defense

Date of assignment: 31. 3. 2017
Date of submission: 11. 12. 2017
Date of defense: 25. 1. 2018
Identifier in the InSIS system: https://insis.vse.cz/zp/62091/podrobnosti

Files for download

    Last update: