🪢 Added elasticsearch to the docker-compose stack

This commit is contained in:
2021-11-09 21:48:52 -08:00
parent 6babcc4c6a
commit 4cc8e92f95
3 changed files with 101 additions and 9 deletions

View File

@@ -158,6 +158,61 @@ services:
ports:
- "6379:6379"
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:{version}
restart: unless-stopped
environment:
- "discovery.type=single-node"
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- "xpack.security.enabled=true"
- "xpack.security.authc.api_key.enabled=true"
- "ELASTIC_PASSWORD=changeme"
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- elasticsearch:/usr/share/elasticsearch/data
ports:
- 127.0.0.1:9200:9200
networks:
- proxy
ent-search:
image: docker.elastic.co/enterprise-search/enterprise-search:{version}
restart: unless-stopped
depends_on:
- "elasticsearch"
environment:
- "JAVA_OPTS=-Xms512m -Xmx512m"
- "ENT_SEARCH_DEFAULT_PASSWORD=changeme"
- "elasticsearch.username=elastic"
- "elasticsearch.password=changeme"
- "elasticsearch.host=http://elasticsearch:9200"
- "allow_es_settings_modification=true"
- "secret_management.encryption_keys=[4a2cd3f81d39bf28738c10db0ca782095ffac07279561809eecc722e0c20eb09]"
- "elasticsearch.startup_retry.interval=15"
ports:
- 127.0.0.1:3002:3002
networks:
- proxy
kibana:
image: docker.elastic.co/kibana/kibana:{version}
restart: unless-stopped
depends_on:
- "elasticsearch"
- "ent-search"
ports:
- 127.0.0.1:5601:5601
environment:
ELASTICSEARCH_HOSTS: http://elasticsearch:9200
ENTERPRISESEARCH_HOST: http://ent-search:3002
ELASTICSEARCH_USERNAME: elastic
ELASTICSEARCH_PASSWORD: changeme
networks:
- proxy
traefik:
image: traefik:2.3.4
restart: unless-stopped
@@ -191,4 +246,6 @@ networks:
volumes:
mongodb_data:
driver: local
elasticsearch:
driver: local

View File

@@ -0,0 +1,42 @@
import React, { ReactElement } from "react";
import { Form, Field } from "react-final-form";
export const AirDCPPConnectionForm = (): ReactElement => {
const onSubmit = () => {};
const validate = async () => {};
return (
<Form
onSubmit={onSubmit}
validate={validate}
render={({ handleSubmit }) => (
<form onSubmit={handleSubmit}>
<p>
<h3 className="title">AirDC++ Connection Settings</h3>
<h6 className="subtitle has-text-grey-light">
Configure AirDC++ connection settings such as hostname and
credentials
</h6>
</p>
<div className="field">
<label className="label">AirDC++ Host</label>
<div className="control">
<Field
name="airdcpp_hostname"
component="input"
className="input"
placeholder="adc://hub.url"
/>
</div>
</div>
<button type="submit" className="button is-primary">
Submit
</button>
</form>
)}
/>
);
};
export default AirDCPPConnectionForm;

View File

@@ -1,5 +1,6 @@
import React, { useState, useEffect, useCallback, ReactElement } from "react";
import { AirDCPPSettingsForm } from "./AirDCPPSettingsForm";
import { AirDCPPConnectionForm } from "./AirDCPPConnectionForm";
import settingsObject from "../constants/settings/settingsMenu.json";
import { isUndefined, map } from "lodash";
@@ -12,15 +13,7 @@ export const Settings = (props: ISettingsProps): ReactElement => {
id: "adc-connection",
content: (
<>
<div className="content">
<p>
<h3 className="title">AirDC++ Connection Settings</h3>
<h6 className="subtitle has-text-grey-light">
Configure AirDC++ connection settings such as hostname and
credentials
</h6>
</p>
</div>
<AirDCPPConnectionForm />
</>
),
},