Would appreciate any pointers on this...
Currently we pull the
kibana:version image and user docker-compose to create a dev/test environment. Then, when both elastic and kibana are running we run another script to create index-templates on the elasticsearch instance and then do the same for lots of kibana saved objects like visualizations, dashboards, index-patterns, defaults etc.
However, this is somewhat time consuming... additionally if there's an issue with someone's local environment they might not be able to complete all the build steps. We're going to have to consider versioning issues pretty soon and having a container with all the settings preloaded (built and tagged by Jenkins) seems ideal.
It's possible to include the index templates used in our own Elasticsearch containers by starting it, applying the settings via the REST api and then shutting it back down/packaging it.
Has anyone at all managed to achieve a similar result with Kibana, given that (as far as I can tell) it's settings actually end up in the .kibana_1 index in Elasticsearch?
- Can you manually create this index and POST the various .json files into it using the Elasticsearch API rather than the Kibana REST endpoint?
- Has anyone managed to do something clever with Docker Build to bring up an Elasticsearch container, install Kibana and use that as an endpoint target, then strip everything out apart from the Elasticsearch innards? (I tried but Kibana won't start)
- Is doing a two part build process feasible? i.e. start elastic, start kibana, post the settings and just keep the Elasticsearch image? Seems... arduous...
- Can I take the .kibana_1 index from instance (a) and import it into the Elasticsearch docker container build process somehow?
Would appreciate any pointers on this or other ideas? Maybe someone's already managed to get this to work?