Adds helm chart support for Kubernetes with minimal documentation.
What works:
Setting cpu/memory options
Setting VNC password
Persistance
Setting SMBIOS
QEMU/virtio cpu changes
Toggling Audio
Additional port forwarding
Kubernetes resource requests/limits
Defining install partition size
What doesn't/isn't defined:
Defining a different version of macOS
Additional QEMU parameters
GPU support
I have written this to leverage everything defined in the Dockerfiles, without making changes to them directly, but via Kubernetes configmaps instead. This makes it easier to merge into the existing codebase without breaking anything, albeit this is less optimized as it could be. For example, mac_hdd_ng.img is created twice [once in the Dockerfile itself and again with the Kubernetes configmap] as this allows us to update parameters and to maintain persistence.
I just want to share this in case anyone else would like to use this and contribute to it. It is by no means perfect--as it has been a hobbyist project for me, but a good starting point for anyone else whom might like to pick it up.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.
## 📋 Pull Request Information
**Original PR:** https://github.com/sickcodes/Docker-OSX/pull/124
**Author:** [@cephasara](https://github.com/cephasara)
**Created:** 1/13/2021
**Status:** ✅ Merged
**Merged:** 1/14/2021
**Merged by:** [@sickcodes](https://github.com/sickcodes)
**Base:** `master` ← **Head:** `master`
---
### 📝 Commits (3)
- [`b28dd70`](https://github.com/sickcodes/Docker-OSX/commit/b28dd7051782ceb87dadede8676cb7a88dc28881) add helm chart for running in Kubernetes
- [`a0a3f67`](https://github.com/sickcodes/Docker-OSX/commit/a0a3f67bc02c7398cf78381b3ee97cede426f6ac) add requriment for host machine
- [`ce3ce48`](https://github.com/sickcodes/Docker-OSX/commit/ce3ce48eb1a732ad2a668b85a93bdc5133c80161) update doc with features
### 📊 Changes
**10 files changed** (+1585 additions, -0 deletions)
<details>
<summary>View changed files</summary>
➕ `helm/.DS_Store` (+0 -0)
➕ `helm/Chart.yaml` (+7 -0)
➕ `helm/README.md` (+44 -0)
➕ `helm/templates/_helpers.tpl` (+32 -0)
➕ `helm/templates/configmap.yaml` (+1175 -0)
➕ `helm/templates/data-pvc.yaml` (+28 -0)
➕ `helm/templates/deployment.yaml` (+124 -0)
➕ `helm/templates/ingress.yaml` (+39 -0)
➕ `helm/templates/service.yaml` (+30 -0)
➕ `helm/values.yaml` (+106 -0)
</details>
### 📄 Description
Adds helm chart support for `Kubernetes` with minimal documentation.
What works:
1) Setting cpu/memory options
1) Setting VNC password
1) Persistance
1) Setting SMBIOS
1) QEMU/virtio cpu changes
1) Toggling Audio
1) Additional port forwarding
1) Kubernetes resource requests/limits
1) Defining install partition size
What doesn't/isn't defined:
1) Defining a different version of macOS
1) Additional QEMU parameters
1) GPU support
I have written this to leverage everything defined in the Dockerfiles, without making changes to them directly, but via Kubernetes configmaps instead. This makes it easier to merge into the existing codebase without breaking anything, albeit this is less optimized as it could be. For example, `mac_hdd_ng.img` is created twice [once in the Dockerfile itself and again with the Kubernetes configmap] as this allows us to update parameters and to maintain persistence.
I just want to share this in case anyone else would like to use this and contribute to it. It is by no means perfect--as it has been a hobbyist project for me, but a good starting point for anyone else whom might like to pick it up.
---
<sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
📋 Pull Request Information
Original PR: https://github.com/sickcodes/Docker-OSX/pull/124
Author: @cephasara
Created: 1/13/2021
Status: ✅ Merged
Merged: 1/14/2021
Merged by: @sickcodes
Base:
master← Head:master📝 Commits (3)
b28dd70add helm chart for running in Kubernetesa0a3f67add requriment for host machinece3ce48update doc with features📊 Changes
10 files changed (+1585 additions, -0 deletions)
View changed files
➕
helm/.DS_Store(+0 -0)➕
helm/Chart.yaml(+7 -0)➕
helm/README.md(+44 -0)➕
helm/templates/_helpers.tpl(+32 -0)➕
helm/templates/configmap.yaml(+1175 -0)➕
helm/templates/data-pvc.yaml(+28 -0)➕
helm/templates/deployment.yaml(+124 -0)➕
helm/templates/ingress.yaml(+39 -0)➕
helm/templates/service.yaml(+30 -0)➕
helm/values.yaml(+106 -0)📄 Description
Adds helm chart support for
Kuberneteswith minimal documentation.What works:
What doesn't/isn't defined:
I have written this to leverage everything defined in the Dockerfiles, without making changes to them directly, but via Kubernetes configmaps instead. This makes it easier to merge into the existing codebase without breaking anything, albeit this is less optimized as it could be. For example,
mac_hdd_ng.imgis created twice [once in the Dockerfile itself and again with the Kubernetes configmap] as this allows us to update parameters and to maintain persistence.I just want to share this in case anyone else would like to use this and contribute to it. It is by no means perfect--as it has been a hobbyist project for me, but a good starting point for anyone else whom might like to pick it up.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.