{"id":259,"date":"2024-04-25T22:36:33","date_gmt":"2024-04-25T22:36:33","guid":{"rendered":"https:\/\/aimitservices.com\/blog\/?p=259"},"modified":"2025-02-26T21:42:29","modified_gmt":"2025-02-26T21:42:29","slug":"ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment","status":"publish","type":"post","link":"https:\/\/aimitservices.com\/blog\/index.php\/2024\/04\/25\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\/","title":{"rendered":"CI\/CD with GitHub Actions, DigitalOcean Container Registry, and Kubernetes Deployment"},"content":{"rendered":"<style>\/*! elementor - v3.21.0 - 30-04-2024 *\/\n.elementor-heading-title{padding:0;margin:0;line-height:1}.elementor-widget-heading .elementor-heading-title[class*=elementor-size-]>a{color:inherit;font-size:inherit;line-height:inherit}.elementor-widget-heading .elementor-heading-title.elementor-size-small{font-size:15px}.elementor-widget-heading .elementor-heading-title.elementor-size-medium{font-size:19px}.elementor-widget-heading .elementor-heading-title.elementor-size-large{font-size:29px}.elementor-widget-heading .elementor-heading-title.elementor-size-xl{font-size:39px}.elementor-widget-heading .elementor-heading-title.elementor-size-xxl{font-size:59px}<\/style>\n<h6>Hey there! If you&#8217;re looking to streamline your development and deployment process using some cool tools like GitHub Actions, DigitalOcean&#8217;s Container Registry (DOCR), and Kubernetes, you&#8217;ve come to the right place. This blog post will guide you through setting up a CI\/CD pipeline that leverages these technologies to boost your workflow efficiency and deployment reliability. Let\u00e2\u20ac\u2122s dive in!<\/h6>\n<h6>Setting the Stage<\/h6>\n<p>First off, let&#8217;s clarify what we&#8217;re dealing with:<\/p>\n<ul>\n<li><strong>GitHub Actions<\/strong>: Automates your workflow by letting you define jobs, including testing and deploying your code directly from GitHub repos.<\/li>\n<li><strong>DigitalOcean Container Registry (DOCR)<\/strong>: A private storage and distribution service for your Docker images, tightly integrated into DigitalOcean&#8217;s ecosystem.<\/li>\n<li><strong>Kubernetes<\/strong>: A powerful system for automating deployment, scaling, and management of containerized applications.<\/li>\n<\/ul>\n<p>\u00c2\u00a0<\/p>\n<p>The synergy of these tools provides a robust platform for automating your software deployment, making your entire process smoother and more efficient.<\/p>\n<h6>Prerequisites<\/h6>\n<p>Before we start, make sure you have:<\/p>\n<ol>\n<li>A GitHub account and basic knowledge of GitHub repositories.<\/li>\n<li>A DigitalOcean account with access to the container registry and Kubernetes services.<\/li>\n<li>Docker installed on your local machine for building container images.<\/li>\n<li>kubectl installed and configured to communicate with your Kubernetes cluster.<\/li>\n<\/ol>\n<p>\u00c2\u00a0\u00c2\u00a0<\/p>\n<p><strong>Step 1: Setting Up the DigitalOcean Container Registry<\/strong><\/p>\n<p>First, you need to create your DOCR. Log into your DigitalOcean dashboard:<\/p>\n<ol>\n<li>Navigate to <strong>Container Registry<\/strong>.<\/li>\n<li>Click <strong>Create Registry<\/strong> and follow the prompts to name your registry.<\/li>\n<li>Once created, make sure to configure your local Docker to authenticate with DOCR using:<\/li>\n<\/ol>\n<pre data-line=\"\">\n\t\t\t\t<code readonly=\"true\">\n\t\t\t\t\t<xmp>doctl registry login\n<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n<p>This command logs in Docker to your DOCR for image pushing.<\/p>\n<p>\u00c2\u00a0<\/p>\n<p><strong>Step 2: Preparing Your Application<\/strong><\/p>\n<p>Let\u00e2\u20ac\u2122s assume you have a simple Node.js application. Ensure your app has a Dockerfile at the root which looks something like this:<\/p>\n<pre data-line=\"\">\n\t\t\t\t<code readonly=\"true\">\n\t\t\t\t\t<xmp># Use an official Node runtime as the parent image\nFROM node:14\n# Set the working directory in the container\nWORKDIR \/usr\/src\/app\n# Copy package.json and install dependencies\nCOPY package.json .\/\nRUN npm install\n# Bundle app source inside the Docker image\nCOPY . .\n# Make your app available on the specified port\nEXPOSE 8080\n# Define the command to run your app\nCMD [ \"node\", \"app.js\" ]\n<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n<h6><strong>Step 3: Configuring GitHub Actions<\/strong><\/h6>\n<p>Create a .github\/workflows\/main.yml file in your repo. This file will define your CI\/CD pipeline. Here\u00e2\u20ac\u2122s a simple workflow:<\/p>\n<pre data-line=\"\">\n\t\t\t\t<code readonly=\"true\">\n\t\t\t\t\t<xmp>name: CI\/CD Pipeline\non:\n  push:\n    branches:\n      - main\njobs:\n  build:\n    runs-on: ubuntu-latest\n    steps:\n    - uses: actions\/checkout@v2\n    - name: Build Docker image\n      run: docker build . --tag docreg.digitalocean.com\/myregistry\/myapp:${{ github.sha }}\n    - name: Push Docker image to DOCR\n      run: |\n        echo ${{ secrets.DIGITALOCEAN_ACCESS_TOKEN }} | docker login docreg.digitalocean.com -u _ --password-stdin\n        docker push docreg.digitalocean.com\/myregistry\/myapp:${{ github.sha }}\n  deploy:\n    needs: build\n    runs-on: ubuntu-latest\n    steps:\n    - name: Set up Kubeconfig\n      run: echo '${{ secrets.KUBECONFIG }}' | base64 --decode > $HOME\/.kube\/config\n    - name: Deploy to Kubernetes\n      run: kubectl set image deployment\/myapp-deployment myapp=docreg.digitalocean.com\/myregistry\/myapp:${{ github.sha }} --record\n<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n<ul>\n<li><strong>Build job<\/strong>: Checks out the code, builds a Docker image, and pushes it to DOCR.<\/li>\n<li><strong>Deploy job<\/strong>: Configures kubectl and updates the Kubernetes deployment with the new image.<\/li>\n<\/ul>\n<p>\u00c2\u00a0<\/p>\n<p><strong>Step 4: Updating Kubernetes Deployment<\/strong><\/p>\n<p>Ensure your Kubernetes deployment YAML references the DOCR image. Here\u00e2\u20ac\u2122s an example snippet:<\/p>\n<pre data-line=\"\">\n\t\t\t\t<code readonly=\"true\">\n\t\t\t\t\t<xmp>apiVersion: apps\/v1\nkind: Deployment\nmetadata:\n  name: myapp-deployment\nspec:\n  replicas: 3\n  selector:\n    matchLabels:\n      app: myapp\n  template:\n    metadata:\n      labels:\n        app: myapp\n    spec:\n      containers:\n      - name: myapp\n        image: docreg.digitalocean.com\/myregistry\/myapp\n        ports:\n        - containerPort: 8080\n<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n<h2>Wrapping Up<\/h2>\n<p>With this setup, every push to the main branch triggers the pipeline, builds your application&#8217;s Docker image, pushes it to DOCR, and updates your Kubernetes deployment. This automation not only ensures a streamlined deployment process but also minimizes human error, making your application deployments consistent and predictable.<\/p>\n<p>Feel free to tweak the configurations according to your project&#8217;s requirements. Happy coding and deploying!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hey there! If you&#8217;re looking to streamline your development and deployment process using some cool tools like GitHub Actions, DigitalOcean&#8217;s Container Registry (DOCR), and Kubernetes, you&#8217;ve come to the right place. This blog post will guide you through setting up a CI\/CD pipeline that leverages these technologies to boost your workflow efficiency and deployment reliability. [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":499,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[15],"tags":[],"class_list":["post-259","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-devops"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"Hey there! If you&#039;re looking to streamline your development and deployment process using some cool tools like GitHub Actions, DigitalOcean&#039;s Container Registry (DOCR), and Kubernetes, you&#039;ve come to the right place. This blog post will guide you through setting up a CI\/CD pipeline that leverages these technologies to boost your workflow efficiency and deployment reliability.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Kris Drebin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/aimitservices.com\/blog\/index.php\/2024\/04\/25\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"AIM IT Services Blog |\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"CI\/CD with GitHub Actions, DigitalOcean Container Registry, and Kubernetes Deployment | AIM IT Services Blog\" \/>\n\t\t<meta property=\"og:description\" content=\"Hey there! If you&#039;re looking to streamline your development and deployment process using some cool tools like GitHub Actions, DigitalOcean&#039;s Container Registry (DOCR), and Kubernetes, you&#039;ve come to the right place. This blog post will guide you through setting up a CI\/CD pipeline that leverages these technologies to boost your workflow efficiency and deployment reliability.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/aimitservices.com\/blog\/index.php\/2024\/04\/25\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2024-04-25T22:36:33+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2025-02-26T21:42:29+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"CI\/CD with GitHub Actions, DigitalOcean Container Registry, and Kubernetes Deployment | AIM IT Services Blog\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Hey there! If you&#039;re looking to streamline your development and deployment process using some cool tools like GitHub Actions, DigitalOcean&#039;s Container Registry (DOCR), and Kubernetes, you&#039;ve come to the right place. This blog post will guide you through setting up a CI\/CD pipeline that leverages these technologies to boost your workflow efficiency and deployment reliability.\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/2024\\\/04\\\/25\\\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\\\/#blogposting\",\"name\":\"CI\\\/CD with GitHub Actions, DigitalOcean Container Registry, and Kubernetes Deployment | AIM IT Services Blog\",\"headline\":\"CI\\\/CD with GitHub Actions, DigitalOcean Container Registry, and Kubernetes Deployment\",\"author\":{\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/author\\\/kris-drebin\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/04\\\/devops-4.png\",\"width\":600,\"height\":233},\"datePublished\":\"2024-04-25T22:36:33+00:00\",\"dateModified\":\"2025-02-26T21:42:29+00:00\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/2024\\\/04\\\/25\\\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/2024\\\/04\\\/25\\\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\\\/#webpage\"},\"articleSection\":\"DevOps\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/2024\\\/04\\\/25\\\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/category\\\/devops\\\/#listItem\",\"name\":\"DevOps\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/category\\\/devops\\\/#listItem\",\"position\":2,\"name\":\"DevOps\",\"item\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/category\\\/devops\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/2024\\\/04\\\/25\\\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\\\/#listItem\",\"name\":\"CI\\\/CD with GitHub Actions, DigitalOcean Container Registry, and Kubernetes Deployment\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/2024\\\/04\\\/25\\\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\\\/#listItem\",\"position\":3,\"name\":\"CI\\\/CD with GitHub Actions, DigitalOcean Container Registry, and Kubernetes Deployment\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/category\\\/devops\\\/#listItem\",\"name\":\"DevOps\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/#organization\",\"name\":\"AIM IT Services Blog\",\"description\":\"Get the latest IT insights from AIM IT Services, including cybersecurity, Microsoft 365, cloud solutions, &amp; software development updates for growing businesses.\",\"url\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/\",\"email\":\"support@aimItservices.com\",\"telephone\":\"+16028089552\",\"foundingDate\":\"1993-01-13\",\"numberOfEmployees\":{\"@type\":\"QuantitativeValue\",\"minValue\":11,\"maxValue\":50},\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/01\\\/Google-Business-Profile-PicGBiz-1x1-1.png\",\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/2024\\\/04\\\/25\\\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\\\/#organizationLogo\",\"width\":720,\"height\":720},\"image\":{\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/2024\\\/04\\\/25\\\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\\\/#organizationLogo\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/author\\\/kris-drebin\\\/#author\",\"url\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/author\\\/kris-drebin\\\/\",\"name\":\"Kris Drebin\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/2024\\\/04\\\/25\\\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/aa669c40777ea71dd9670ceed60f849601c4006761381d0abf4a6084841cb042?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Kris Drebin\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/2024\\\/04\\\/25\\\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\\\/#webpage\",\"url\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/2024\\\/04\\\/25\\\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\\\/\",\"name\":\"CI\\\/CD with GitHub Actions, DigitalOcean Container Registry, and Kubernetes Deployment | AIM IT Services Blog\",\"description\":\"Hey there! If you're looking to streamline your development and deployment process using some cool tools like GitHub Actions, DigitalOcean's Container Registry (DOCR), and Kubernetes, you've come to the right place. This blog post will guide you through setting up a CI\\\/CD pipeline that leverages these technologies to boost your workflow efficiency and deployment reliability.\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/2024\\\/04\\\/25\\\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/author\\\/kris-drebin\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/author\\\/kris-drebin\\\/#author\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/04\\\/devops-4.png\",\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/2024\\\/04\\\/25\\\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\\\/#mainImage\",\"width\":600,\"height\":233},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/index.php\\\/2024\\\/04\\\/25\\\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\\\/#mainImage\"},\"datePublished\":\"2024-04-25T22:36:33+00:00\",\"dateModified\":\"2025-02-26T21:42:29+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/\",\"name\":\"AIM IT Services Blog\",\"alternateName\":\"AIM IT Services Resources\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/aimitservices.com\\\/blog\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"CI\/CD with GitHub Actions, DigitalOcean Container Registry, and Kubernetes Deployment | AIM IT Services Blog","description":"Hey there! If you're looking to streamline your development and deployment process using some cool tools like GitHub Actions, DigitalOcean's Container Registry (DOCR), and Kubernetes, you've come to the right place. This blog post will guide you through setting up a CI\/CD pipeline that leverages these technologies to boost your workflow efficiency and deployment reliability.","canonical_url":"https:\/\/aimitservices.com\/blog\/index.php\/2024\/04\/25\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/aimitservices.com\/blog\/index.php\/2024\/04\/25\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\/#blogposting","name":"CI\/CD with GitHub Actions, DigitalOcean Container Registry, and Kubernetes Deployment | AIM IT Services Blog","headline":"CI\/CD with GitHub Actions, DigitalOcean Container Registry, and Kubernetes Deployment","author":{"@id":"https:\/\/aimitservices.com\/blog\/index.php\/author\/kris-drebin\/#author"},"publisher":{"@id":"https:\/\/aimitservices.com\/blog\/#organization"},"image":{"@type":"ImageObject","url":"https:\/\/aimitservices.com\/blog\/wp-content\/uploads\/2024\/04\/devops-4.png","width":600,"height":233},"datePublished":"2024-04-25T22:36:33+00:00","dateModified":"2025-02-26T21:42:29+00:00","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/aimitservices.com\/blog\/index.php\/2024\/04\/25\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\/#webpage"},"isPartOf":{"@id":"https:\/\/aimitservices.com\/blog\/index.php\/2024\/04\/25\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\/#webpage"},"articleSection":"DevOps"},{"@type":"BreadcrumbList","@id":"https:\/\/aimitservices.com\/blog\/index.php\/2024\/04\/25\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/aimitservices.com\/blog\/#listItem","position":1,"name":"Home","item":"https:\/\/aimitservices.com\/blog\/","nextItem":{"@type":"ListItem","@id":"https:\/\/aimitservices.com\/blog\/index.php\/category\/devops\/#listItem","name":"DevOps"}},{"@type":"ListItem","@id":"https:\/\/aimitservices.com\/blog\/index.php\/category\/devops\/#listItem","position":2,"name":"DevOps","item":"https:\/\/aimitservices.com\/blog\/index.php\/category\/devops\/","nextItem":{"@type":"ListItem","@id":"https:\/\/aimitservices.com\/blog\/index.php\/2024\/04\/25\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\/#listItem","name":"CI\/CD with GitHub Actions, DigitalOcean Container Registry, and Kubernetes Deployment"},"previousItem":{"@type":"ListItem","@id":"https:\/\/aimitservices.com\/blog\/#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/aimitservices.com\/blog\/index.php\/2024\/04\/25\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\/#listItem","position":3,"name":"CI\/CD with GitHub Actions, DigitalOcean Container Registry, and Kubernetes Deployment","previousItem":{"@type":"ListItem","@id":"https:\/\/aimitservices.com\/blog\/index.php\/category\/devops\/#listItem","name":"DevOps"}}]},{"@type":"Organization","@id":"https:\/\/aimitservices.com\/blog\/#organization","name":"AIM IT Services Blog","description":"Get the latest IT insights from AIM IT Services, including cybersecurity, Microsoft 365, cloud solutions, &amp; software development updates for growing businesses.","url":"https:\/\/aimitservices.com\/blog\/","email":"support@aimItservices.com","telephone":"+16028089552","foundingDate":"1993-01-13","numberOfEmployees":{"@type":"QuantitativeValue","minValue":11,"maxValue":50},"logo":{"@type":"ImageObject","url":"https:\/\/aimitservices.com\/blog\/wp-content\/uploads\/2026\/01\/Google-Business-Profile-PicGBiz-1x1-1.png","@id":"https:\/\/aimitservices.com\/blog\/index.php\/2024\/04\/25\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\/#organizationLogo","width":720,"height":720},"image":{"@id":"https:\/\/aimitservices.com\/blog\/index.php\/2024\/04\/25\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\/#organizationLogo"}},{"@type":"Person","@id":"https:\/\/aimitservices.com\/blog\/index.php\/author\/kris-drebin\/#author","url":"https:\/\/aimitservices.com\/blog\/index.php\/author\/kris-drebin\/","name":"Kris Drebin","image":{"@type":"ImageObject","@id":"https:\/\/aimitservices.com\/blog\/index.php\/2024\/04\/25\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/aa669c40777ea71dd9670ceed60f849601c4006761381d0abf4a6084841cb042?s=96&d=mm&r=g","width":96,"height":96,"caption":"Kris Drebin"}},{"@type":"WebPage","@id":"https:\/\/aimitservices.com\/blog\/index.php\/2024\/04\/25\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\/#webpage","url":"https:\/\/aimitservices.com\/blog\/index.php\/2024\/04\/25\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\/","name":"CI\/CD with GitHub Actions, DigitalOcean Container Registry, and Kubernetes Deployment | AIM IT Services Blog","description":"Hey there! If you're looking to streamline your development and deployment process using some cool tools like GitHub Actions, DigitalOcean's Container Registry (DOCR), and Kubernetes, you've come to the right place. This blog post will guide you through setting up a CI\/CD pipeline that leverages these technologies to boost your workflow efficiency and deployment reliability.","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/aimitservices.com\/blog\/#website"},"breadcrumb":{"@id":"https:\/\/aimitservices.com\/blog\/index.php\/2024\/04\/25\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\/#breadcrumblist"},"author":{"@id":"https:\/\/aimitservices.com\/blog\/index.php\/author\/kris-drebin\/#author"},"creator":{"@id":"https:\/\/aimitservices.com\/blog\/index.php\/author\/kris-drebin\/#author"},"image":{"@type":"ImageObject","url":"https:\/\/aimitservices.com\/blog\/wp-content\/uploads\/2024\/04\/devops-4.png","@id":"https:\/\/aimitservices.com\/blog\/index.php\/2024\/04\/25\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\/#mainImage","width":600,"height":233},"primaryImageOfPage":{"@id":"https:\/\/aimitservices.com\/blog\/index.php\/2024\/04\/25\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\/#mainImage"},"datePublished":"2024-04-25T22:36:33+00:00","dateModified":"2025-02-26T21:42:29+00:00"},{"@type":"WebSite","@id":"https:\/\/aimitservices.com\/blog\/#website","url":"https:\/\/aimitservices.com\/blog\/","name":"AIM IT Services Blog","alternateName":"AIM IT Services Resources","inLanguage":"en-US","publisher":{"@id":"https:\/\/aimitservices.com\/blog\/#organization"}}]},"og:locale":"en_US","og:site_name":"AIM IT Services Blog |","og:type":"article","og:title":"CI\/CD with GitHub Actions, DigitalOcean Container Registry, and Kubernetes Deployment | AIM IT Services Blog","og:description":"Hey there! If you're looking to streamline your development and deployment process using some cool tools like GitHub Actions, DigitalOcean's Container Registry (DOCR), and Kubernetes, you've come to the right place. This blog post will guide you through setting up a CI\/CD pipeline that leverages these technologies to boost your workflow efficiency and deployment reliability.","og:url":"https:\/\/aimitservices.com\/blog\/index.php\/2024\/04\/25\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\/","article:published_time":"2024-04-25T22:36:33+00:00","article:modified_time":"2025-02-26T21:42:29+00:00","twitter:card":"summary_large_image","twitter:title":"CI\/CD with GitHub Actions, DigitalOcean Container Registry, and Kubernetes Deployment | AIM IT Services Blog","twitter:description":"Hey there! If you're looking to streamline your development and deployment process using some cool tools like GitHub Actions, DigitalOcean's Container Registry (DOCR), and Kubernetes, you've come to the right place. This blog post will guide you through setting up a CI\/CD pipeline that leverages these technologies to boost your workflow efficiency and deployment reliability."},"aioseo_meta_data":{"post_id":"259","title":null,"description":null,"keywords":null,"keyphrases":{"focus":[],"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"BlogPosting","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2024-04-26 18:57:27","updated":"2026-08-12 20:22:35","seo_analyzer_scan_date":null,"focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/aimitservices.com\/blog\/\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/aimitservices.com\/blog\/index.php\/category\/devops\/\" title=\"DevOps\">DevOps<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tCI\/CD with GitHub Actions, DigitalOcean Container Registry, and Kubernetes Deployment\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/aimitservices.com\/blog\/"},{"label":"DevOps","link":"https:\/\/aimitservices.com\/blog\/index.php\/category\/devops\/"},{"label":"CI\/CD with GitHub Actions, DigitalOcean Container Registry, and Kubernetes Deployment","link":"https:\/\/aimitservices.com\/blog\/index.php\/2024\/04\/25\/ci-cd-with-github-actions-digitalocean-container-registry-and-kubernetes-deployment\/"}],"_links":{"self":[{"href":"https:\/\/aimitservices.com\/blog\/index.php\/wp-json\/wp\/v2\/posts\/259","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/aimitservices.com\/blog\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/aimitservices.com\/blog\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/aimitservices.com\/blog\/index.php\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/aimitservices.com\/blog\/index.php\/wp-json\/wp\/v2\/comments?post=259"}],"version-history":[{"count":19,"href":"https:\/\/aimitservices.com\/blog\/index.php\/wp-json\/wp\/v2\/posts\/259\/revisions"}],"predecessor-version":[{"id":387,"href":"https:\/\/aimitservices.com\/blog\/index.php\/wp-json\/wp\/v2\/posts\/259\/revisions\/387"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/aimitservices.com\/blog\/index.php\/wp-json\/wp\/v2\/media\/499"}],"wp:attachment":[{"href":"https:\/\/aimitservices.com\/blog\/index.php\/wp-json\/wp\/v2\/media?parent=259"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/aimitservices.com\/blog\/index.php\/wp-json\/wp\/v2\/categories?post=259"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/aimitservices.com\/blog\/index.php\/wp-json\/wp\/v2\/tags?post=259"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}