Is there any project or plan to pack the Fusio into Helm Charts?
wdhwang opened this issue · comments
Hi. I am trying to manage all containers by Helm Charts.
Is there any project or plan to pack the Fusio into Helm Charts?
Thanks & regards
Hi @wdhwang currently we have no Helm chart but in general this is a good idea, we should add this to our docker repo s. https://github.com/apioo/fusio-docker
Thank you for your response, hope to see it soon.
Hi, I am trying run Fusio on K8s, so I modified 'docker-compose.yml' in the following steps.
- Change fusio image source to 'image: fusio/fusio:4.0.0' at line 5.
- Change 'api.fusio.cloud' to 'master1' for my testing purpose.
- Change '8080' port to '30080' for using NodePort.
- Change 'mysql_fusio, worker_java, worker_javascript, worker_php, worker_python' names' underscore to hyphen as 'mysql-fusio, worker-java, worker-javascript, worker-php, worker-python'.
- Add 'lable' in fusio section at line 33.
labels:
kompose.service.type: NodePort
kompose.service.nodeport.port: "30080" - Add 'expose' in mysql-fusio section.
expose:- 3306
After docker-compose.yml modified, and use 'kompose' to create K8s resource files.
kompose convert -f docker-compose.yml --with-kompose-annotation=false --out k8s/
And execute the following commands.
_kubectl create ns fusio
kubectl apply -n fusio -f k8s/worker-java-claim0-persistentvolumeclaim.yaml
kubectl apply -n fusio -f k8s/worker-javascript-claim0-persistentvolumeclaim.yaml
kubectl apply -n fusio -f k8s/worker-php-claim0-persistentvolumeclaim.yaml
kubectl apply -n fusio -f k8s/worker-python-claim0-persistentvolumeclaim.yaml
kubectl apply -n fusio -f k8s/mysql-fusio-claim0-persistentvolumeclaim.yaml
kubectl apply -n fusio -f k8s/fusio-service.yaml
kubectl apply -n fusio -f k8s/mysql-fusio-service.yaml
kubectl apply -n fusio -f k8s/worker-java-deployment.yaml
kubectl apply -n fusio -f k8s/worker-javascript-deployment.yaml
kubectl apply -n fusio -f k8s/worker-php-deployment.yaml
kubectl apply -n fusio -f k8s/worker-python-deployment.yaml
kubectl apply -n fusio -f k8s/mysql-fusio-deployment.yaml
kubectl apply -n fusio -f k8s/fusio-deployment.yaml
#kubectl apply -n fusio -f k8s/fusio-default-networkpolicy.yaml_
Finally, I could let Fusio running on K8s.
I am not sure this is useful for the project or not. Just sharing with you.
docker-compose.zip
Hi, I am trying to create helm chart from K8s resource files after Fusio could run on K8s.
And I issued the following commands to create helm charts.
sed -e "s,true,false,g" -i k8s/default-networkpolicy.yaml
awk 'FNR==1 && NR!=1 {print "---"}{print}' k8s/.yaml | helmify fusio-helm
helm install fusio --create-namespace -n fusio ./fusio-helm
But I found there were no files of Fusio under the directory of /var/lib/mysql/fusio in the Pod of MySQL.
So there were no tables in database of fusio.
And I still tried to figure out what happened.
I found the reason why the helm charts did not work. Because the service name in 'metadata' section was too long in the generated YAML file by helmify. So I removed all '{{ include "fusio-helm.fullname" . }}' from all YAML files. After testing, I think the attachment zip file worked.
fusio-helm.zip
If you are free, you may test it.
Thanks for the feedback and testing, I will try it out and see whether everything works, in general would it be ok for you if I add this to our https://github.com/apioo/fusio-docker repository?
Of course, you can. I hope this is helpful.
Any update?