---
title: "Migration to Kubernetes with our expert help"
description: "We help you plan and implement your Kubernetes migrations and moving your legacy applications into the cloud native sphere."
canonical_url: "https://www.blueshoe.io/our-services/migration-to-kubernetes/"
---

> Index of every page on this site: [llms.txt](https://www.blueshoe.io/llms.txt)

<global-wrapper-sections>
<global-section-with-background-image :src="/img/services/cloud_native_development_header.svg">
<global-headline :title="Migration to Kubernetes">



</global-headline>

<global-paragraph>

Setup your architecture for the future with microservices

</global-paragraph>
</global-section-with-background-image>

<global-services-navigation-card>



</global-services-navigation-card>

<global-card-with-background-image-section :is-button="true" :src="/img/services/blue_shoes-32.jpg" :width="md:w-2/3" dataTitle="Get help with your Kubernetes migration">
<global-pre-title className="mb-4">

GO THE CLOUD NATIVE WAY WITH KUBERNETES AND OUR HELP

</global-pre-title>

<global-title className="mb-6">

We help with your Kubernetes migration

</global-title>

<global-paragraph>

Getting your legacy applications and monoliths ready for a cloud native future can seem like a daunting task. But don't worry, we have done this a lot in the past and know the ins and outs. Let us help you planning and implementing your migration strategy and embrace a cloud native future.

</global-paragraph>

<template v-slot:button="">
<global-button :label="Contact us" :url="/contact/">



</global-button>
</template>
</global-card-with-background-image-section>

<global-list-card-slider-section :bg="bg-bs-gray" :dot-color="black" :is-button="true" :number-cards="5" dataTitle="Why should you migrate to Kubernetes?">
<global-pre-title className="mb-4" :color="text-bs-green">

REAP WHAT YOU SOW

</global-pre-title>

<global-title className="mb-6">

Why should you migrate to Kubernetes?

</global-title>

<global-paragraph className="mb-6">

Kubernetes is an open-source container-orchestration system for automating deployment, scaling, and management of containerized applications. Companies migrate to Kubernetes for a number of reasons, including:

</global-paragraph>

<template v-slot:card1="">
<global-list-card-with-image :src="/img/global/icons/cube.svg">
<global-title className="mb-4" :size="sm" :tag="h4">

Scalability

</global-title>

<global-paragraph className="mb-3" :font-size="lg">

Improved scalability and availability: Kubernetes makes it easy to scale applications up or down as needed. It also provides high availability by automatically restarting failed containers and scheduling new ones on different nodes in the cluster.

</global-paragraph>
</global-list-card-with-image>
</template>

<template v-slot:card2="">
<global-list-card-with-image :src="/img/global/icons/workflow.svg">
<global-title className="mb-4" :size="sm" :tag="h4">

Streamlining

</global-title>

<global-paragraph className="mb-3" :font-size="lg">

Streamlined deployment process: With Kubernetes, you can deploy applications quickly and reliably by using pre-defined configurations stored in YAML files. This eliminates the need for manual configuration changes each time you need to deploy a new version of your application.

</global-paragraph>
</global-list-card-with-image>
</template>

<template v-slot:card3="">
<global-list-card-with-image :src="/img/global/icons/cyber-security.svg">
<global-title className="mb-4" :size="sm" :tag="h4">

Security

</global-title>

<global-paragraph className="mb-3" :font-size="lg">

Increased security: Kubernetes provides built-in security features such as role-based access control (RBAC) and network policy enforcement that help protect your applications from malicious attacks and unauthorized access.

</global-paragraph>
</global-list-card-with-image>
</template>

<template v-slot:card4="">
<global-list-card-with-image :src="/img/global/icons/cost_1.svg">
<global-title className="mb-4" :size="sm" :tag="h4">

Costs

</global-title>

<global-paragraph className="mb-3" :font-size="lg">

By running multiple applications on the same host with Kubernetes, companies can reduce their infrastructure costs by eliminating the need for dedicated hardware for each application.

</global-paragraph>
</global-list-card-with-image>
</template>

<template v-slot:card5="">
<global-list-card-with-image :src="/img/global/icons/handschellen.svg">
<global-title className="mb-4" :size="sm" :tag="h4">

Vendor dependence

</global-title>

<global-paragraph className="mb-3" :font-size="lg">

No vendor lock-in: a well set up Kubernetes implementation puts you in the position to switch between vendors with relative ease and therefore minimizes your risk exposure with regards to the dependence on your vendor.

</global-paragraph>
</global-list-card-with-image>
</template>

<template v-slot:button="">
<global-button :label="Book a free video consultation" :url="https://blueshoe.io/michael/" :target="_blank">



</global-button>
</template>
</global-list-card-slider-section>

<global-curved-slider :alt="Michael Schilonka" :button-url="https://blueshoe.io/michael/" :size="full" :src="/img/slider/michael_schilonka.webp" className="mb-6">
<template v-slot:preTitle="">

Software development by Blueshoe

</template>

<template v-slot:title="">

Rock solid and long-lasting

</template>

<template v-slot:card1="">
<global-curved-slider-card :alt="logo" :size="small" :src="/img/slider/group_7.png" :text-color="text-bs-blue" :z-index="5" :first-card="true">



</global-curved-slider-card>
</template>

<template v-slot:cardTitle="">
<span>

1.

</span>

 Requirements Analysis Workshop

</template>

<template v-slot:cardText="">

Start your journey here
:::

</template>

<template v-slot:card2="">
<global-curved-slider-card :alt="logo" :size="small" :src="/img/slider/group_5.png" :text-color="text-bs-blue" :z-index="4">



</global-curved-slider-card>
</template>

<template v-slot:cardTitle="">
<span>

2.

</span>

 Actionable Requirements Definition

</template>

<template v-slot:cardText="">

You receive a precise price indication for your project
:::

</template>

<template v-slot:card3="">
<global-curved-slider-green-card :size="small" :z-index="3">

Project greenlight or stop

</global-curved-slider-green-card>
</template>

<template v-slot:card4="">
<global-curved-slider-card :alt="logo" :size="small" :src="/img/slider/group_10.png" :text-color="text-bs-green" :z-index="2" :border-color="border-bs-blue" :border-style="dashed">



</global-curved-slider-card>
</template>

<template v-slot:cardTitle="">
<span>

3.

</span>

 Project Implementation

</template>

<template v-slot:cardText="">

Rock solid, blazingly fast software and infrastructure
:::

</template>

<template v-slot:card5="">
<global-curved-slider-card :alt="logo" :size="small" :src="/img/slider/group_11.png" :text-color="text-bs-green" :z-index="1" :border-color="border-bs-blue" :border-style="dashed">



</global-curved-slider-card>
</template>

<template v-slot:cardTitle="">
<span>

4.

</span>

 Long-lasting Maintenance

</template>

<template v-slot:cardText="">

Corrective Maintenance <br />

 Perfective Maintenance <br />

 Adaptive Maintenance
:::

</template>

<template v-slot:buttonBlockTitle="">

Book a meeting with our expert now

</template>

<template v-slot:buttonLabel="">

Find a timeslot

</template>
</global-curved-slider>

<global-simple-section :bg="bg-bs-gray" :is-button="true" dataTitle="Types of migrations">
<global-pre-title className="mb-3,sm:px-8,md:px-20,xl:px-0">

LOOKING AT THE EMERGENCE OF DEVELOPMENT PLATFORMS

</global-pre-title>

<global-title className="mb-6,sm:px-8,md:px-20,xl:px-0">

Types of Kubernetes Migrations

</global-title>

<global-paragraph className="mb-4,sm:px-8,md:px-20,xl:px-0">

We want to migrate our production and staging/testing systems to Kubernetes (K8s) and have developers develop with private or individual Kubernetes clusters. Check out this blog post for an [example of local development with Kubernetes.](https://www.blueshoe.io/blog/local-kubernetes-development) Depending on the development process, existing projects may need to be prepared before migration. We'll look at three example projects that differ in development procedure and hosting: one developed locally using Vagrant, two using Docker images, and hosted with either Docker Compose or Kubernetes. The goal is for all three projects to appear both in development and operating under the stage ‘Container-Orchestrated’.

</global-paragraph>

<global-paragraph className="mb-4,sm:px-8,md:px-20,xl:px-0">

The following graphic illustrates the temporal development of development and hosting systems, we can clearly assign our example projects but will ignore the first stage, "Bare Metal".

</global-paragraph>

![unikube dpope Infographic](https://www.blueshoe.io/img/services/unikube_dpope-Infographic.jpg)

<global-title className="mb-6,sm:px-8,md:px-20,xl:px-0" :size="lg" :tag="h3">

Example 1: Local development using Vagrant

</global-title>

<global-paragraph className="mb-4,sm:px-8,md:px-20,xl:px-0">

Vagrant was developed to simulate the production environment in a virtual machine. Now, with Cloud Native, applications and their environment variables are put into containers. To migrate to Docker, a Dockerfile must be created. It's important to consider which parts of the application can be subdivided into individual services. This prevents the application from becoming a monolith. For example systems like a databank or a cache should not end up in the Dockerfile but should instead be configured as individual services.

</global-paragraph>

<global-paragraph className="mb-6,sm:px-8,md:px-20,xl:px-0">

Helm charts should be created for all required services, which generate K8s resources. Finally, the development process must transition to Kubernetes. Developers can use local clusters simulated by k3d, microk8s or minikube, or remote clusters only used by one developer.

</global-paragraph>

<global-title className="mb-6,sm:px-8,md:px-20,xl:px-0" :size="lg" :tag="h3">

Example 2: Local development and hosting with Docker Compose

</global-title>

<global-paragraph className="mb-6,sm:px-8,md:px-20,xl:px-0">

Our second project uses Docker Compose for development and hosting of the production system. We have already thought thoroughly about the different services the application will need and have Dockerfiles and a Docker-Compose.yaml to define the services needed. The main part of the migration consists of the creation of the Kubernetes configuration files. To create Kubernetes configs, we use Helm charts for easier maintenance in larger projects. Alternatively, we can use the kompose command to convert the Docker-Compose.yaml into manifest files. Finally, we transition the local development process to Kubernetes.

</global-paragraph>

<global-title className="mb-6,sm:px-8,md:px-20,xl:px-0" :size="lg" :tag="h3">

Example 3: Local development via Docker Compose, hosting via Kubernetes

</global-title>

<global-paragraph className="mb-6,sm:px-8,md:px-20,xl:px-0">

With this project, we have already subdivided our services and have one or several Dockerfiles. For local development, Docker Compose is used while hosting takes place via Kubernetes. The only migration step is transitioning the local development process to Kubernetes. The production environment for the local development has to be simulated in the Docker-Compose.yaml. This does require a certain amount of extra effort and creates the problem that the local environment doesn’t quite match the production environment. This means that unexpected problems or side effects can occur during deployment."

</global-paragraph>

<global-title className="mb-6,sm:px-8,md:px-20,xl:px-0" :size="lg" :tag="h3">

Challenges during migration

</global-title>

<global-paragraph className="mb-6,sm:px-8,md:px-20,xl:px-0">

For the migration, a few challenges need to be overcome. These include the transition to local development processes and any additional tools that developers must master. An operations specialist with Kubernetes knowledge is needed to develop Helm charts.

</global-paragraph>

<global-title className="mb-6,sm:px-8,md:px-20,xl:px-0" :size="md" :tag="h4">

Obstacles from a developers point of view:

</global-title>

<global-block className="ol-decimal,mb-4,ml-4,sm:px-8,md:px-20,xl:px-0">

1. Learning how to use [kubectl](https://kubernetes.io/docs/reference/kubectl/) in order to enable the direct interaction with the cluster.
2. Live code-reloading: when the code is changed, it should be possible to test the alterations as quickly as possible – without having to first build a new Docker image and deploy it in the local cluster. This is possible via [Gefyra](https://gefyra.dev/), for example
3. For most developers, the debugger is undoubtedly an important part of an optimal development process. With a local Kubernetes cluster, this debugger has to be explicitly configured again. In a Python environment, for example, you do this using python remote debug.

</global-block>

<global-paragraph className="mb-6,sm:px-8,md:px-20,xl:px-0">

Developers may have to learn at least the basics of three further tools in order to utilise the whole scope of features which the Docker Compose setup has made available. We can help you figuring out the right [toolchain](https://www.blueshoe.io/our-services/cloud-native-tools) for your business, help you with the implementation of tools and train your developers on the usage of your new toolset.

</global-paragraph>

<template v-slot:button="">
<global-button :label="Contact us" :url="/contact/">



</global-button>
</template>
</global-simple-section>

<global-podcast-section :video-id="KapP6ouEL3E">
<global-pre-title className="mb-3" :color="text-bs-green">

OUR PODCAST: TOOLS FOR THE CRAFT

</global-pre-title>

<global-title className="mb-6">

E2: Remote Kubernetes development environments

</global-title>

<global-paragraph className="mb-4" :font-size="lg">

Michael and Robert take a closer look at the different options for remote Kubernetes development and give some real life examples.

</global-paragraph>

<global-paragraph className="mb-4" :font-size="lg">

More of our podcasts can be found here:

</global-paragraph>

<global-button :label="Show more" :url="/podcast/" :color="green">



</global-button>
</global-podcast-section>

<global-section-with-image :alt="data" :image="/img/services/data_1.svg" :image-position="left" :is-button="true" dataTitle="Migrating from from docker compose">
<global-title className="mb-6">

Migrating from from docker compose

</global-title>

<global-paragraph className="mb-4">

Many companies still use Docker Compose legacy setups to manage their containerized applications. Docker Compose is a tool that allows developers to define and run multi-container applications using a YAML file. This makes it easy to deploy and manage complex applications on any platform.

</global-paragraph>

<global-paragraph className="mb-4">

Docker Compose is especially useful for companies that have existing applications written in different languages and frameworks, as it allows them to quickly deploy and manage these applications without having to rewrite them from scratch. Additionally, Docker Compose can be used to quickly scale up or down the number of containers running an application, making it ideal for companies with fluctuating workloads.

</global-paragraph>

<global-paragraph className="mb-4">

Despite its advantages, Docker Compose has some drawbacks that make it less suitable for modern cloud-native deployments. For example, it lacks support for Kubernetes, which is the de facto standard for container orchestration today. Additionally, its YAML files can become complex and difficult to maintain over time.

</global-paragraph>

<global-paragraph>

Despite these drawbacks, many companies still use Docker Compose legacy setups due to its ease of use and familiarity. This is especially true for smaller organizations that don't have the resources or expertise needed to migrate their existing applications to more modern solutions such as Kubernetes.

</global-paragraph>

<template v-slot:button="">
<global-button :label="Book a meeting" :url="https://blueshoe.io/michael/" :target="_blank">



</global-button>
</template>
</global-section-with-image>

<global-simple-section :bg="bg-bs-gray" :is-button="true" dataTitle="Get started with kompose.io">
<global-pre-title className="mb-3" :color="text-bs-green">

A LITTLE HELPER FOR MOVING AWAY FROM DOCKER COMPOSE

</global-pre-title>

<global-title className="mb-6">

Get started with kompose.io

</global-title>

<global-paragraph className="mb-4">

Kompose.io is a great solution for companies that are looking to migrate from Docker Compose to Kubernetes. Kompose is a tool that allows developers to convert their existing Docker Compose files into Kubernetes YAML files, making it easy to migrate existing applications without having to rewrite them from scratch.

</global-paragraph>

<global-paragraph className="mb-4">

Kompose also provides additional features that make it easier to manage and deploy applications on Kubernetes. For example, it can automatically generate Kubernetes manifests for services, deployments, and ingresses, as well as generate Helm charts for deploying applications on Kubernetes clusters. Additionally, Kompose can be used to quickly scale up or down the number of containers running an application, making it ideal for companies with fluctuating workloads.

</global-paragraph>

<global-paragraph className="mb-4">

Overall, Kompose is a great solution for companies that are looking to migrate from Docker Compose to Kubernetes. It makes the process of migrating existing applications much simpler and faster than having to rewrite them from scratch. Additionally, its additional features make it easier to manage and deploy applications on Kubernetes clusters.

</global-paragraph>

<global-paragraph>

Our experts can help you with your migration using kompose.io. Let's talk about it.

</global-paragraph>

<template v-slot:button="">
<global-button :label="Talk to us" :url="https://blueshoe.io/michael/" :target="_blank">



</global-button>
</template>
</global-simple-section>

<global-list-card-slider-section :bg="bg-white" :dot-color="black" :is-button="true" :number-cards="3" dataTitle="Possible problems when migrating to Kubernetes">
<global-title className="mb-6">

Possible problems when migrating to Kubernetes

</global-title>

<template v-slot:card1="">
<global-list-card-with-image :src="/img/global/icons/arrows.svg">
<global-title className="mb-4" :size="sm" :tag="h4">

Complexity

</global-title>

<global-paragraph className="mb-3" :font-size="lg">

Kubernetes is a complex system with many moving parts, and migrating to it can be difficult and time consuming. It requires a deep understanding of the system in order to make sure that everything is configured correctly and runs smoothly.

</global-paragraph>
</global-list-card-with-image>
</template>

<template v-slot:card2="">
<global-list-card-with-image :src="/img/global/icons/cyber-security.svg">
<global-title className="mb-4" :size="sm" :tag="h4">

Security risks

</global-title>

<global-paragraph className="mb-3" :font-size="lg">

Kubernetes can be vulnerable to security threats if not properly configured. Misconfigured settings can lead to unauthorized access or data leakage, so it’s important to take the necessary steps to ensure that your cluster is secure.

</global-paragraph>
</global-list-card-with-image>
</template>

<template v-slot:card3="">
<global-list-card-with-image :src="/img/global/icons/fast.svg">
<global-title className="mb-4" :size="sm" :tag="h4">

Poor performance

</global-title>

<global-paragraph className="mb-3" :font-size="lg">

If your application is not well-suited for running in containers, or if you don’t have enough resources allocated for your cluster, performance may suffer as a result of using Kubernetes.

</global-paragraph>
</global-list-card-with-image>
</template>

<template v-slot:button="">
<global-button :label="We help you avoid these issues. Contact us today." :url="/contact/">



</global-button>
</template>
</global-list-card-slider-section>

<global-list-card-slider-section :bg="bg-bs-gray" :dot-color="black" :is-button="false" :number-cards="4" dataTitle="Factors to consider before migrating to Kubernetes">
<global-pre-title className="mb-3" :color="text-bs-green">

WHAT YOU NEED TO THINK ABOUT

</global-pre-title>

<global-title className="mb-6">

Important factors to consider before migrating to Kubernetes

</global-title>

<template v-slot:card1="">
<global-list-card-with-image :src="/img/global/icons/check-list.svg">
<global-title className="mb-4" :size="sm" :tag="h4">

Assess your application

</global-title>

<global-paragraph className="mb-3" :font-size="lg">

Before migrating to Kubernetes, it’s important to assess your application and determine if it is suitable for running in containers. Not all applications can be easily containerized, so you need to make sure that yours is compatible with Kubernetes before investing time and resources into the migration process.

</global-paragraph>
</global-list-card-with-image>
</template>

<template v-slot:card2="">
<global-list-card-with-image :src="/img/global/icons/strategy_1.svg">
<global-title className="mb-4" :size="sm" :tag="h4">

Plan ahead

</global-title>

<global-paragraph className="mb-3" :font-size="lg">

It’s important to plan ahead and consider the resources that will be needed to run your application on Kubernetes. This includes things like CPU, memory, storage, and networking requirements.

</global-paragraph>
</global-list-card-with-image>
</template>

<template v-slot:card3="">
<global-list-card-with-image :src="/img/global/icons/cyber-security.svg">
<global-title className="mb-4" :size="sm" :tag="h4">

Security considerations

</global-title>

<global-paragraph className="mb-3" :font-size="lg">

Make sure that you understand the security implications of using Kubernetes and take the necessary steps to ensure that your cluster is secure. This includes setting up role-based access control (RBAC) and network policy enforcement for your cluster.

</global-paragraph>
</global-list-card-with-image>
</template>

<template v-slot:card4="">
<global-list-card-with-image :src="/img/global/icons/fast.svg">
<global-title className="mb-4" :size="sm" :tag="h4">

Performance monitoring

</global-title>

<global-paragraph className="mb-3" :font-size="lg">

Once your application is running on Kubernetes, it’s important to monitor its performance closely in order to identify any potential issues or areas for improvement.

</global-paragraph>
</global-list-card-with-image>
</template>
</global-list-card-slider-section>

<global-accordion-section :border-color="gray" :color="text-bs-text" :hover-color="gray" :icon-color="text-bs-text" :number-items="7" bg="bg-white" dataTitle="Prepare your application(s) for the migration">
<global-title className="mb-6">

Prepare your application(s) for the migration

</global-title>

<template v-slot:label-1="">
<global-title :size="sm" :tag="h4">

Containerize your application

</global-title>
</template>

<template v-slot:text-1="">
<global-paragraph className="mb-4" :font-size="lg">

The first step is to containerize your application by packaging it into an image. This will enable you to easily deploy and manage your application on Kubernetes.

</global-paragraph>

<global-paragraph className="mb-4" :font-size="lg">

One tool that is currently all the rage when it comes to containerizing your applications is buildpacks.io

</global-paragraph>

<global-paragraph :font-size="lg">

[Buildpacks.io](https://buildpacks.io/) is a platform that provides developers with a set of tools to easily build and deploy applications in any language on any cloud. It provides a unified workflow for building, testing, and deploying applications across multiple clouds, including AWS, Google Cloud Platform, Microsoft Azure, and more. Buildpacks.io also offers an intuitive UI to manage your application's infrastructure and configuration, as well as an [API](https://www.blueshoe.io/our-services/api-development-company/) to automate the process.

</global-paragraph>
</template>

<template v-slot:label-2="">
<global-title :size="sm" :tag="h4">

Create a Continuous Integration (CI) Pipeline

</global-title>
</template>

<template v-slot:text-2="">
<global-paragraph :font-size="lg">

The first step in setting up CI/CD with Kubernetes is to create a CI pipeline. This pipeline should be designed to automatically build, test, and deploy your application code whenever changes are made.

</global-paragraph>
</template>

<template v-slot:label-3="">
<global-title :size="sm" :tag="h4">

Set up a container registry

</global-title>
</template>

<template v-slot:text-3="">
<global-paragraph :font-size="lg">

The next step is to set up a container registry such as Docker Hub or Google Container Registry (GCR). This will allow you to store and manage your container images for easy deployment.

</global-paragraph>
</template>

<template v-slot:label-4="">
<global-title :size="sm" :tag="h4">

Create Kubernetes manifests

</global-title>
</template>

<template v-slot:text-4="">
<global-paragraph :font-size="lg">

Once your application is containerized, you need to create Kubernetes manifests that define how the containers should be deployed and managed on the cluster. This includes things like replica sets, services, and ingress rules. There are a few different options available for this, for example:

</global-paragraph>

<global-block className="ul-disk,mb-4">

- Helm or Kustomize
- Plain YAML
- Kompose.io (if you know docker compose)

</global-block>
</template>

<template v-slot:label-5="">
<global-title :size="sm" :tag="h4">

Create Continuous Delivery (CD) Pipeline

</global-title>
</template>

<template v-slot:text-5="">
<global-paragraph :font-size="lg">

After configuring the Kubernetes deployment, you can create a CD pipeline that will automate the process of deploying new versions of your application to the cluster whenever changes are made in the source code repository.

</global-paragraph>
</template>

<template v-slot:label-6="">
<global-title :size="sm" :tag="h4">

Test locally

</global-title>
</template>

<template v-slot:text-6="">
<global-paragraph className="mb-4" :font-size="lg">

Once you have created the necessary manifests, it’s important to test them locally before deploying them to the cluster. This will ensure that everything works as expected before going live. To make this as easy as possible, we can provide you with perfectly fitted open source tools that help you abstract most of the complexity that comes with this. Check out:

</global-paragraph>

<global-paragraph className="mb-4" :font-size="lg">

[https://getdeck.dev/](https://getdeck.dev/)

</global-paragraph>

<global-paragraph className="mb-4" :font-size="lg">

Easily create Kubernetes environments. A simple CLI that helps you to easily provision reproducible K8s environments with all dependencies managed.

</global-paragraph>

<global-paragraph className="mb-4" :font-size="lg">

[https://getdeck.dev/beiboot/](https://getdeck.dev/beiboot/)

</global-paragraph>

<global-paragraph className="mb-4" :font-size="lg">

A Kubernetes-in-Kubernetes solution that was born from the idea to provide Getdeck users a simple yet flexible solution to spin up hybrid cloud development infrastructure. This is useful for development workloads which grew too large to run on a development machine

</global-paragraph>

<global-paragraph className="mb-4" :font-size="lg">

[Gefyra](https://gefyra.dev/)

</global-paragraph>

<global-paragraph className="mb-4" :font-size="lg">

Gefyra runs local code in any Kubernetes cluster without the build and push cycle. It overlays containers in the cluster making code changes immediately available.

</global-paragraph>
</template>

<template v-slot:label-7="">
<global-title :size="sm" :tag="h4">

Deploy and monitor

</global-title>
</template>

<template v-slot:text-7="">
<global-paragraph :font-size="lg">

Deploy and monitor: Finally, deploy your application to the cluster and monitor its performance closely in order to identify any potential issues or areas for improvement.

</global-paragraph>
</template>
</global-accordion-section>

<global-simple-section :bg="bg-bs-blue" :is-button="false" dataTitle="What's next?: Development and testing">
<global-pre-title className="mb-3" :color="text-bs-green">

WHAT COMES AFTER YOUR MIGRATION?

</global-pre-title>

<global-title className="mb-6" :color="text-white">

What's next: Development & Testing

</global-title>

<global-paragraph className="mb-4" :color="text-white">

Once you have migrated to Kubernetes, it is important to ensure that your development and testing workflows are optimized for the new environment. Kubernetes provides a powerful platform for running applications, but it also requires a different approach to development and testing than traditional environments.

</global-paragraph>

<global-paragraph className="mb-4" :color="text-white">

For example, when developing applications on Kubernetes, it is important to ensure that all code changes are tested in an environment that works like your production environment before being deployed to production. This helps to ensure that any bugs or performance issues are identified and fixed before they can affect the end user. This however can be tricky and is once again the point where our open source tools will come in handy for you.

</global-paragraph>

<global-paragraph className="mb-4" :color="text-white">

We help you easily roll out pre-confirgured Kubernetes environments to your devs that make development and fast testing really easy while also providing you with the technical means to quickly see what results code changes bring while not needing to resort to a slow build-push cycle.

</global-paragraph>

<global-paragraph className="mb-4" :color="text-white">

Overall, good development and testing workflows are essential when migrating to Kubernetes. By following best practices such as using staging environments, automated testing tools, and CI/CD pipelines, companies can ensure that their applications run smoothly on the platform.

</global-paragraph>

<global-paragraph className="mb-4" :color="text-white">

At Blueshoe, we are committed to providing the highest quality of service when it comes to migrating applications to Kubernetes. Our team of experienced engineers will work closely with you to ensure that your applications are migrated in a timely and efficient manner, while taking into account any security and reliability concerns.

</global-paragraph>

<global-paragraph :color="text-white">

We will provide comprehensive support throughout the entire process, from initial planning and design to deployment and post-migration maintenance. With our expertise in Kubernetes, you can be sure that your applications will be migrated successfully and securely.

</global-paragraph>
</global-simple-section>

<global-slider-section :number-cards="3" dataTitle="Cloud-native projects">
<global-title className="mb-6">

Cloud-native projects

</global-title>

<global-paragraph>

Setting up our customer projects according to the cloud-native approach helps us to develop complex systems quickly and efficiently and to implement short, efficient release cycles. The following projects are a small excerpt from our past cloudnative projects.

</global-paragraph>

<template v-slot:card1="">
<global-slider-card :desktop-image="{"src": "/img/global/slide/bildschirmfoto.jpg", "alt": "fonds finanz"}" :tags="["Django CMS", "Redis", "Bootstrap", "VueJS", "Docker", "Kubernetes"]" :logo="{"src": "/img/global/slide/fondsfinanz.jpg", "alt": "fonds finanz"}">
<global-paragraph :font-size="lg">

Infrastructure for automated seminar and webinar management. Including consent management, connection to existing systems and interfaces to external applications such as Go2Webinar.

</global-paragraph>
</global-slider-card>
</template>

<template v-slot:title="">
<global-title>

Fondsfinanz - Automation Hub

</global-title>
</template>

<template v-slot:button="">
<global-button :label="Find out more" :url="https://www.fondsfinanz.de/weiterbildung/online-angebot" :target="_blank">



</global-button>

::::

</template>

<template v-slot:card2="">
<global-slider-card :desktop-image="{"src": "/img/global/slide/wintercompany.jpg", "alt": "winter&company"}" :tags="["Django", "Python", "Hubspot"]" :logo="{"src": "/img/global/slide/winter-company.jpg", "alt": "winter&company"}" :mobile-image="{"src": "/img/global/slide/wintercompany_mobile.jpg", "alt": "winter&company"}">
<global-paragraph :font-size="lg">

We developed a digital strategy with a focus on search engine optimisation for the Swiss designer of covering materials Winter & Company. Furthermore, we positioned the brand with potential new customers not having known the company so far.

</global-paragraph>
</global-slider-card>
</template>

<template v-slot:title="">
<global-title>

Digitalisation and strengthening of the brand

</global-title>
</template>

<template v-slot:button="">
<global-button :label="Find out more" :url="https://www.winter-company.com" :target="_blank">



</global-button>

::::

</template>

<template v-slot:card3="">
<global-slider-card :desktop-image="{"src": "/img/global/slide/nick-fewings.jpg", "alt": "nick fewings"}" :tags="["Cloud-native development"]">
<global-paragraph :font-size="lg">

Pssst! We have already worked in the field of cloud-native for a well-known car manufacturer. For some other clients as well. If you want to know more, just give us a call!

</global-paragraph>
</global-slider-card>
</template>

<template v-slot:title="">
<global-title>

Secret Projects

</global-title>
</template>

<template v-slot:button="">
<global-button :label="Contact us" :url="/contact/">



</global-button>

::::

</template>
</global-slider-section>

<global-simple-section :overflow="true">
<blog-related-posts :headline="Some of our blog articles about Kubernetes" :limit="5" :tags="["Kubernetes"]">



</blog-related-posts>
</global-simple-section>
</global-wrapper-sections>

## Sitemap

See the full [sitemap](https://www.blueshoe.io/sitemap.md) for all pages.
