Umbraco and Kubes working would be that high on the roadmap, compared to porting it to .NET core.
They run Umbraco cloud within Azure so the more well-traveled path is to use Umbraco within an Azure web app.
With Umbraco Cloud, uSync, etc.. it is possible to get near replica environments and also go through below links once
Hi Maarten, I would to create a kubernetes cluster with Umbraco 9 but this is my first time with Kubernetes.
So...I ask you if you can give me this informations:
the umbraco 9 version you used
if you started with this docker (https://swimburger.net/blog/umbraco/how-to-run-umbraco-9-as-a-linux-docker-container)
if I can follow instructions like this to create the umbraco 9 docker (https://swimburger.net/blog/umbraco/how-to-run-umbraco-9-as-a-linux-docker-container), or can you give me another one
the requirements of each kubernetes node
how to configure different Media Folder location (other server)
I didn't start with any Docker template or blog. We wrote one based on our own experience with building .net for docker and used our existing knowledge for deploying to Kubernetes.
The blog you mention seems to be just fine to create working docker image but lacks the deployment part to Kubernetes. We use a different base image to get a smaller image size but require some modification in the Dockerfile.
Our build image is based on FROM mcr.microsoft.com/dotnet/sdk:6.0-bullseye-slim AS build
Our runtime image is based on FROM mcr.microsoft.com/dotnet/aspnet:6.0-alpine3.14 AS base
We are currently using the following versions
Umbraco.CMS v9.2.0
Umbraco.StorageProviders.AzureBlob v1.0.0
The requirements of the node is hard to say. It totally depends on how many containers you will be running and that node.
Things to take into consideration.
You will have to do changes to Umbraco if you want to do load-balancing.
Modify the startup class to .AddEnvironmentVariables(); this will allow you passing in config variables through the k8s.yaml file.
For media storage we use a blob storage on Azure and use the Umbraco.StorageProviders.AzureBlob.
Did you by any chance stumble upon "System.UnauthorizedAccessException: Access to the path '/app/wwwroot/media' is denied." error after deploying the site to Azure Kubernetes Service? I configured storage account settings according to https://docs.umbraco.com/umbraco-cms/extending/filesystemproviders/azure-blob-storage but I don't understand why Umbraco needs to have access to wwwroot when it has access to a blob storage.
Do I need to have a persistent storage for AKS? Is it possible for you to share important parts of your Dockerfile and k8s yaml file?
We have Umbraco running in kube, umbraco 8 in fact, but we found a strange occurence. The machine name, when trying to load balance is being identified as a 15 character string, and is not registering correctly, since pur kube deployments define the pod name, and they will all identify as the same machine. What can you do in this scenario?
Is Umbraco Kubernetes ready?
Hi there
Since Umbraco will switch to .Net Core, was my thought, if it would be kuberentes ready?
Did someone from you have exp with it?
Hello,
Umbraco and Kubes working would be that high on the roadmap, compared to porting it to .NET core. They run Umbraco cloud within Azure so the more well-traveled path is to use Umbraco within an Azure web app. With Umbraco Cloud, uSync, etc.. it is possible to get near replica environments and also go through below links once
https://umbraco.com/blog/net-core-alpha-release/
https://skrift.io/issues/umbraco-docker-and-kubernetes-should-we-care/
We have released our first website based on Umbraco 9 which runs on our Kubernetes cluster.
Very easy with the v9 release of Umbraco.
Hi Maarten, I would to create a kubernetes cluster with Umbraco 9 but this is my first time with Kubernetes.
So...I ask you if you can give me this informations:
Thank you for your support Adriano
Hey Adriano,
I didn't start with any Docker template or blog. We wrote one based on our own experience with building .net for docker and used our existing knowledge for deploying to Kubernetes.
The blog you mention seems to be just fine to create working docker image but lacks the deployment part to Kubernetes. We use a different base image to get a smaller image size but require some modification in the Dockerfile.
Our build image is based on
FROM mcr.microsoft.com/dotnet/sdk:6.0-bullseye-slim AS build
Our runtime image is based on
FROM mcr.microsoft.com/dotnet/aspnet:6.0-alpine3.14 AS base
We are currently using the following versions
The requirements of the node is hard to say. It totally depends on how many containers you will be running and that node.
Things to take into consideration.
.AddEnvironmentVariables();
this will allow you passing in config variables through the k8s.yaml file.For media storage we use a blob storage on Azure and use the
Umbraco.StorageProviders.AzureBlob
.Hi,
Did you by any chance stumble upon "System.UnauthorizedAccessException: Access to the path '/app/wwwroot/media' is denied." error after deploying the site to Azure Kubernetes Service? I configured storage account settings according to https://docs.umbraco.com/umbraco-cms/extending/filesystemproviders/azure-blob-storage but I don't understand why Umbraco needs to have access to wwwroot when it has access to a blob storage.
Do I need to have a persistent storage for AKS? Is it possible for you to share important parts of your Dockerfile and k8s yaml file?
Hi There,
We have Umbraco running in kube, umbraco 8 in fact, but we found a strange occurence. The machine name, when trying to load balance is being identified as a 15 character string, and is not registering correctly, since pur kube deployments define the pod name, and they will all identify as the same machine. What can you do in this scenario?
You need the name of the machine to determine the server role?
In that case i would separate the deployments one your the subscribers and one for the publisher. So you can configure the role base on a config key.
is working on a reply...