summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--public/v1/apps/elasticsearch.json74
1 files changed, 74 insertions, 0 deletions
diff --git a/public/v1/apps/elasticsearch.json b/public/v1/apps/elasticsearch.json
new file mode 100644
index 0000000..567b2f9
--- /dev/null
+++ b/public/v1/apps/elasticsearch.json
@@ -0,0 +1,74 @@
+{
+ "captainVersion": 1,
+ "documentation": "Elasticsearch is a distributed, RESTful search and analytics engine. This image can be used for single nodes and cluster setups. Look at https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html for further assistance using Elasticsearch with docker.",
+ "dockerCompose": {
+ "version": "3.3",
+ "services": {
+ "$$cap_appname": {
+ "image" : "docker.elastic.co/elasticsearch/elasticsearch:$$cap_elasticsearch_version",
+ "volumes": [
+ "$$cap_appname-elasticsearch-data:/usr/share/elasticsearch/data"
+ ],
+ "restart": "always",
+ "environment": {
+ "ES_JAVA_OPTS": "-Xms512m -Xmx512m",
+ "cluster.name": "$$cap_elasticsearch_cluster_name",
+ "http.port": "$$cap_container_port",
+ "node.master": "$$cap_elasticsearch_node_master",
+ "node.data": "$$cap_elasticsearch_node_data",
+ "discovery.zen.minimum_master_nodes": "$$cap_elasticsearch_minimum_master_nodes",
+ "discovery.zen.ping.unicast.hosts": "$$cap_elasticsearch_unicast_hosts"
+ },
+ "containerHttpPort": "$$cap_container_port"
+ }
+ }
+ },
+ "instructions": {
+ "start": "Elasticsearch startearch engine. Be sure to extend the virtual memory on all your hosts! (increase \"echo 'vm.max_map_count=262144' >> /etc/sysctl.conf\" and restart \"sysctl -p\")",
+ "end": "Deployment of Elasticsearch is finished. You might see 502 errors for the next 2 minutes. Goto <YOUR-APP-URL>/_cat/health to check the health of your cluster."
+ },
+ "variables": [{
+ "id": "$$cap_elasticsearch_version",
+ "label": "Elasticsearch Version Tag ",
+ "description": "Checkout the releases overview: https://www.elastic.co/de/downloads/elasticsearch",
+ "defaultValue": "6.7.1",
+ "validRegex": "/^([^\\s^\\/])+$/"
+ },{
+ "id": "$$cap_elasticsearch_cluster_name",
+ "label": "Cluster Name",
+ "description": "Only nodes within the same cluster name can be combined",
+ "defaultValue": "elasticsearch-cluster",
+ "validRegex": "/^([^\\s^\\/])+$/"
+ },{
+ "id": "$$cap_elasticsearch_unicast_hosts",
+ "label": "Unicasts hosts",
+ "description": "References to other node to attach to. (for example: srv-captain--XXX)",
+ "defaultValue": "false",
+ "validRegex": "/^([^\\s^\\/])+$/"
+ },{
+ "id": "$$cap_elasticsearch_node_data",
+ "label": "Node Data",
+ "description": "Should the node used for storing data? (true / false)",
+ "defaultValue": "true",
+ "validRegex": "/^([^\\s^\\/])+$/"
+ },{
+ "id": "$$cap_elasticsearch_node_master",
+ "label": "Node Master",
+ "description": "Define node as master-eligible (usual first node YES, others NO).",
+ "defaultValue": "true",
+ "validRegex": "/^([^\\s^\\/])+$/"
+ },{
+ "id": "$$cap_elasticsearch_minimum_master_nodes",
+ "label": "Minimum Master Nodes",
+ "description": "Define minimum amount of master (N) ( best practice: ceil(N/2 + 1) ).",
+ "defaultValue": "1",
+ "validRegex": "/^([0-9])+$/"
+ },{
+ "id": "$$cap_container_port",
+ "label": "Container TCP Port",
+ "defaultValue": "9200",
+ "description": "Internal port for Elasticsearch the container listens to.",
+ "validRegex": "/^([0-9])+$/"
+ }
+ ]
+} \ No newline at end of file