Implementation of Continous Delivery using Jenkins And Kubernetes with Docker Local Images
DOI:
10.33395/sinkron.v8i4.12624Keywords:
CI/CD, Continous Delivery, Continous Deployment, DevOps, Continous Integration, JenkinsAbstract
The need for software has increased and the development process has also become more complex as technology has developed which resulted application will take a long time to deployed, which can be completed in weeks or even months. One reason is the large number of teams involved in application development, especially the Development Team and Operations Team. These teams can cause the application delivery process to the user's side to be hampered if a conflict occurs, so the term DevOps appears. Support for DevOps continues to be improved, so there is CI/CD (Continuous Integration and Continuous Delivery/Deployment). Banyak penelitian mengenai CI/CD yang sudah dilakukan dan menggunakan tools Jenkins, Kubernetes, dan Docker. Namun penelitian yang sudah ada menggunakan repository DockerHub untuk menyimpan Docker Image This research focuses on the local implementation of the docker image which is then run with Kubernetes Orchestration so it can reduce the platform used by CI/CD. This implementation requires conversion from docker image to Kubernetes Image Cache. The results show that the Continous Delivery implementation using Kubernetes with the Local Docker image is successful and can run well. The results show that the average time required to create a docker image is 649 seconds (10 minutes 49 seconds) and image conversion process which takes an average time of 275 seconds (4 minutes 35 seconds). Research can be developed further by researching techniques to shorten build time, minimize resource utilitation and minimize time conversion from docker images to Kubernetes Image Cache.
Downloads
References
Alpery, A., & Ridha, M. A. F. (2021). Implementasi CI/CD dalam Pengembangan Aplikasi Web Menggunakan Docker dan Jenkins. 9th Applied Business and Engineering Conference, 9, 287–296.
Canonical, L. (n.d.). How to use a local registry. How to Use a Local Registry. Retrieved May 8, 2023, from https://microk8s.io/docs/registry-images
Contabo. (n.d.). Contabo. Contabo Cloud VPS & Dedicated Servers for a Price You’ll Love. Retrieved April 27, 2023, from https://contabo.com/en
Danur Wijayanto, Arizona Firdonsyah, & Faisal Dharma Adhinata. (2021). Implementasi Continous Integration/Continous Delivery Menggunakan Process Manager 2 (Studi Kasus: SIAKAD Akademi Keperawatan Bina Insan). Teknika, 10(3), 181–188. https://doi.org/10.34148/teknika.v10i3.400
Fadil, I., Saeppani, A., Guntara, A., & Mahardika, F. (2020). Distributing Parallel Virtual Image Application using Continuous Integrity/Continuous Delivery Based on
Cloud Infrastructure. 2020 8th International Conference on Cyber and IT Service Management (CITSM), 1–4. https://doi.org/10.1109/CITSM50537.2020.9268860
Freeman, E. (2019). Devops for dummies (1st ed). John Wiley and Sons.
Garg, S., & Garg, S. (2019). Automated Cloud Infrastructure, Continuous Integration and Continuous Delivery using Docker with Robust Container Security. 2019 IEEE
Conference on Multimedia Information Processing and Retrieval (MIPR), 467–470. https://doi.org/10.1109/MIPR.2019.00094
GitHub, I. (n.d.). About webhooks. About Webhooks: Learn the Basics of How Webhooks Work to Help You Build and Set up Integrations.
Jeffery, A., Howard, H., & Mortier, R. (2021). Rearchitecting Kubernetes for the Edge. Proceedings of the 4th International Workshop on Edge Systems, Analytics and Networking, 7–12. https://doi.org/10.1145/3434770.3459730
Kim, G., Debois, P., Willis, J., Humble, J., & Allspaw, J. (2016). The DevOps handbook: How to create world-class agility, reliability, & security in technology organizations (First edition). IT Revolution Press, LLC.
Kubernetes, I. (n.d.). Kubernetes Deployment. Kubernetes Deployment.
Leite, L., Rocha, C., Kon, F., Milojicic, D., & Meirelles, P. (2020). A Survey of DevOps Concepts and Challenges. ACM Computing Surveys, 52(6), 1–35. https://doi.org/10.1145/3359981
Luhana, K. K., Schindler, C., & Slany, W. (2018). Streamlining mobile app deployment with Jenkins and Fastlane in the case of Catrobat’s pocket code. 2018 IEEE International Conference on Innovative Research and Development (ICIRD), 1–6. https://doi.org/10.1109/ICIRD.2018.8376296
Mahboob, J., & Coffman, J. (2021). A Kubernetes CI/CD Pipeline with Asylo as a Trusted Execution Environment Abstraction Framework. 2021 IEEE 11th Annual Computing and Communication Workshop and Conference (CCWC), 0529–0535. https://doi.org/10.1109/CCWC51732.2021.9376148
R, N. D. & Mohana. (2022). Jenkins Pipelines: A Novel Approach to Machine Learning Operations (MLOps). 2022 International Conference on Edge Computing and Applications (ICECAA), 1292–1297. https://doi.org/10.1109/ICECAA55415.2022.9936252
Rodriguez, M. A., & Buyya, R. (2019). Container‐based cluster orchestration systems: A taxonomy and future directions. Software: Practice and Experience, 49(5), 698–719. https://doi.org/10.1002/spe.2660
Shahin, M., Ali Babar, M., & Zhu, L. (2017). Continuous Integration, Delivery and Deployment: A Systematic Review on Approaches, Tools, Challenges and Practices. IEEE Access, 5, 3909–3943. https://doi.org/10.1109/ACCESS.2017.2685629
Singh, C., Gaba, N. S., Kaur, M., & Kaur, B. (2019). Comparison of Different CI/CD Tools Integrated with Cloud Platform. 2019 9th International Conference on Cloud Computing, Data Science & Engineering (Confluence), 7–12. https://doi.org/10.1109/CONFLUENCE.2019.8776985
Yin, Z., Liu, J., Chen, B., & Chen, C. (2021). A Delivery Robot Cloud Platform Based on Microservice. Journal of Robotics, 2021, 1–10. https://doi.org/10.1155/2021/6656912
Downloads
How to Cite
Issue
Section
License
Copyright (c) 2023 Danur Wijayanto, Arizona Firdonsyah
This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.