Firstly, I’m new to Grafana , Docker and AWS
I’ve managed to run grafana from a docker image on AWS EC2 instance
I created a Github repo with a Dockerfile and a docker-compose.yml to automate the deploying process using the grafana/grafana image from dockerhub.
And mounted some docker volumes to make the configuration, dashboards, users, and all the data created in Grafana persistent when containter stops and re-run.
So the server is working correctly with grafana now.
However, I still have 2 esencial questions:
- How can I backup consistently all the grafana data (Config, Dashboards, Users, etc, etc).
I mean, If I need to migrate to another server. The best practice is to copy manually the grafana.db and grafana.ini ?
I found provisioning feature very basic for this purpose, because it won’t save all the details that me and the users can modify on the run.
I would really like to keep all this data in a repository instead, is that possible ??
2)I’m able to modify the grafana UI (Logos, titles, etc) , but again, how can I backup this changes in a Github for example.
Only way is commit the container to my personal docker-hub?
Because I read this is not a good practice and better to use public grafana/grafana image from dockerhub, so I can update grafana easily.
I tend to think all the grafana data and the UI modifications I’m doing will be lost if I want to migrate to another server.
Besides, due to this restrictions, I understand I cannot make changes on my local server and then deploy them to the AWS server. Right ?
So I would need to start from scratch at some point. Which means losing a lot of time again and again for a newbie.
Am I missing something?
Do you have any advice? which is the best practice?
Thank you in advance for any help,