Kakao Enterprise: Implementing GitHub Actions for Company-Wide DevOps Standardization
Key point
Integrated distributed CI tools like Jenkins and scaled Docker-based Runners using Kubernetes to improve operational efficiency.
Details
Kakao Enterprise adopted GitHub Actions for company-wide DevOps standardization. Previously, the use of different CI solutions per project, such as Jenkins, Drone, and Bamboo, caused burdens in assigning personnel and difficulties in integration during collaboration. Accordingly, they established a standard workflow using GitHub Enterprise as the source repository, executing CI via GitHub Actions upon commit, generating images, and uploading them to the Kakao i Cloud Container Registry.
Regarding Runner operations, due to internal circumstances, cloud Runners could not be used, so Self-hosted Runners were provisioned centrally. Initially launched as VM processes, Runners are now launched via Docker with autoscaling applied on a Kubernetes cluster to efficiently handle CI loads. Additionally, the DooD (Docker out of Docker) method, which mounts the host's docker.sock, was adopted instead of the security-risky DinD (Docker in Docker) method.
Issues encountered during operations included proxy configuration problems for languages such as Node.js, Android, and Elixir, which were resolved using default Runner settings. Furthermore, while the Ephemeral option is being considered for Runner reuse, there is currently an issue preventing parallel Job processing, and improvement work is underway.
This summary was generated automatically by AI. Check the original for the author's claims and context. Copyright belongs to the original author.
Our guide explains how the AI works. Report summary errors, attribution issues, or removal requests via Contact.