How To Create Your Helm Chart And Push To ArtifactHub
Hey, guys hope you all are doing good in today's article we are going to create our own helm chart and push it to the repo. Now some of you might be thinking what is Helm?? Basically, it is a kind of package which has all the yml files and son as we launch the helm chart they will create all the files automatically so it is to manage and deeply and suppose we want to delete particular project then we just have to give one command to helm rest helm will do for it clearing the project in this article we will be same yml files which we created in the previous article if not yet have read suggest you read it and come back because in this article we are going to see how to deploy those with the help of helm.
For using helm you have to install helm in your respective workstation from the below link.
Once you have installed you could use the helm version for verifying it is installed or not if the successfully installed output will be like the below image.
Create a folder and go inside init using the below command.
Note: Below command is for window
mkdir wordpress
cd wordpress
Inside the folder make one file called Chart.YAML and in that file below content
apiVersion: v1
name: Wordress
description: Wordpress for Kubernetes
type: application
version: 0.2.0
appVersion: 1.1.0
After saving the above file make one folder in the same directory name template
inside template folder put all your yml file you want to deploy in our case three files which we put in last article Github link for filed provided at the end.
After saving all the files in the template folder use the below command to deploy the file using the helm.
helm install [name from which you want to install] [main folder location inwhich you create char.yaml and template file]Eg:-helm install wordpress helm_prc1/
After installing you could use helm list to check all the installed package in you system
Create one directory named charts. Make sure this directory should be inside the WordPress directory.
After that run the below command to packages the chart and store it inside the charts/ directory.
helm pakage [main folder location inwhich you create char.yaml and template file] -d charts/helm package C:\Users\aditya\Desktop\helm_prac -d charts/
Now we have to make one file called index.YAML file which has data of charts.YAML file fo that use the following command inside the directory
helm repo index charts/
Now we are ready to public our chart for that first make sure you have installed git in your system after installing git in your system run the following command basically we have to put our folder to GitHub before publishing it to artifact hub.
git init
git add .
git commit -m "give any msg according to you"
git branch -M main
git remote add origin [giturl]
git push -u origin main
After pushing it, go to the Github repository and click on setting then Github Pages.
And then there select your branch where you have pushed your code and save it.
Now go to your ArtifactHub account and log in to it.
Now click on profile icon > control Panel> Add repository.
Note: Make sure your repository’s URL should be like https://username.github.io/repository_name/chart/ when you’re adding a repository in ArtifactHub. Otherwise, it can create some issues related to URLs.After giving all the information you can see the output like below which means the helm chart publish successfully.
Helm chart link:-https://artifacthub.io/packages/helm/wordpress/wordress
GitHub link:-https://github.com/guptaadi123/wordpress-on-k8s_multi-node.git
Guys, here we come to the end of this blog I hope you all like it and found it informative. If have any query feel free to reach me :)
Guys follow me for such amazing blogs and if have any review then please let me know I will keep those points in my mind next time while writing blogs. If want to read more such blog to know more about me here is my website link https://avg-g.technology.Guys Please do not hesitate to keep 👏👏👏👏👏 for it (An Open Secret: You can clap up to 50 times for a post, and the best part is, it wouldn’t cost you anything), also feel free to share it across. This really means a lot to me.