Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/lmenezes/cerebro
https://github.com/lmenezes/cerebro
admin elasticsearch
Last synced: about 11 hours ago
JSON representation
- Host: GitHub
- URL: https://github.com/lmenezes/cerebro
- Owner: lmenezes
- License: mit
- Created: 2016-03-23T13:05:09.000Z (over 8 years ago)
- Default Branch: main
- Last Pushed: 2024-02-12T09:56:27.000Z (10 months ago)
- Last Synced: 2024-12-04T23:03:28.809Z (8 days ago)
- Topics: admin, elasticsearch
- Language: JavaScript
- Size: 3.51 MB
- Stars: 5,549
- Watchers: 188
- Forks: 715
- Open Issues: 206
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGES.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
- awesome-elasticsearch - Cerebro
- elasticsearch-collection - Cerebro
- awesome-ops - lmenezes/cerebro - 03-23|2024-02-12 | cerebro 是一个开源的 elasticsearch Web 管理工具,使用 Scala、Play Framework、AngularJS 和 Bootstrap 构建。 | (ElasticSearch-Manage)
README
Cerebro
------------
[![Docker Pulls](https://img.shields.io/docker/pulls/lmenezes/cerebro.svg)](https://hub.docker.com/r/lmenezes/cerebro)
![build](https://github.com/lmenezes/cerebro/workflows/build/badge.svg?branch=master)cerebro is an open source(MIT License) elasticsearch web admin tool built using Scala, Play Framework, AngularJS and Bootstrap.
### Requirements
cerebro needs Java 11 or newer to run.
### Installation
- Download from [https://github.com/lmenezes/cerebro/releases](https://github.com/lmenezes/cerebro/releases)
- Extract files
- Run bin/cerebro(or bin/cerebro.bat if on Windows)
- Access on http://localhost:9000### Chocolatey (Windows)
You can install `cerebro` using [Chocolatey](https://chocolatey.org/):
```sh
choco install cerebro-es
```Package creates windows service ```cerebro```.
Access on http://localhost:9000### Docker
You can find the official docker images in the official [docker hub repo](https://hub.docker.com/r/lmenezes/cerebro/).
Visit [cerebro-docker](https://github.com/lmenezes/cerebro-docker) for further information.
### Configuration
#### HTTP server address and port
You can run cerebro listening on a different host and port(defaults to 0.0.0.0:9000):```
bin/cerebro -Dhttp.port=1234 -Dhttp.address=127.0.0.1
```#### LDAP config
LDAP can be configured using environment variables. If you typically run cerebro using docker,
you can pass a file with all the env vars. The file would look like:```bash
# Set it to ldap to activate ldap authorization
AUTH_TYPE=ldap# Your ldap url
LDAP_URL=ldap://exammple.com:389LDAP_BASE_DN=OU=users,DC=example,DC=com
# Usually method should be "simple" otherwise, set it to the SASL mechanisms
LDAP_METHOD=simple# user-template executes a string.format() operation where
# username is passed in first, followed by base-dn. Some examples
# - %s => leave user untouched
# - %[email protected] => append "@domain.com" to username
# - uid=%s,%s => usual case of OpenLDAP
LDAP_USER_TEMPLATE=%[email protected]# User identifier that can perform searches
[email protected]
LDAP_BIND_PWD=adminpass# Group membership settings (optional)
# If left unset LDAP_BASE_DN will be used
# LDAP_GROUP_BASE_DN=OU=users,DC=example,DC=com# Attribute that represent the user, for example uid or mail
# LDAP_USER_ATTR=mail# If left unset LDAP_USER_TEMPLATE will be used
# LDAP_USER_ATTR_TEMPLATE=%s# Filter that tests membership of the group. If this property is empty then there is no group membership check
# AD example => memberOf=CN=mygroup,ou=ouofthegroup,DC=domain,DC=com
# OpenLDAP example => CN=mygroup
# LDAP_GROUP=memberOf=memberOf=CN=mygroup,ou=ouofthegroup,DC=domain,DC=com```
You can the pass this file as argument using:
```bash
docker run -p 9000:9000 --env-file env-ldap lmenezes/cerebro
```There are some examples of configuration in the [examples folder](./examples).
#### Other settings
Other settings are exposed through the **conf/application.conf** file found on the application directory.
It is also possible to use an alternate configuration file defined on a different location:
```
bin/cerebro -Dconfig.file=/some/other/dir/alternate.conf
```