|
1 |
| -# App Search extension |
| 1 | +# Enterprise Search extension |
2 | 2 |
|
3 |
| -Elastic App Search provides access to a set of robust APIs and people friendly dashboard controls to deliver amazing |
4 |
| -search experiences, all backed by the Elastic Stack. |
| 3 | +Elastic Enterprise Search is a suite of products for search applications backed by the Elastic Stack. |
5 | 4 |
|
6 | 5 | ## Requirements
|
7 | 6 |
|
8 |
| -* 2 GB of free RAM, on top of the resources required by the other stack components and extensions |
| 7 | +* 2 GB of free RAM, on top of the resources required by the other stack components and extensions. |
9 | 8 |
|
10 |
| -App Search exposes the TCP port `3002` for its Web UI and API. |
| 9 | +Enterprise Search exposes the TCP port `3002` for its Web UI and API. |
11 | 10 |
|
12 | 11 | ## Usage
|
13 | 12 |
|
14 |
| -To include App Search in the stack, run Docker Compose from the root of the repository with an additional command |
15 |
| -line argument referencing the `app-search-compose.yml` file: |
| 13 | +### Generate an encryption key |
| 14 | + |
| 15 | +Enterprise Search requires one or more [encryption keys][enterprisesearch-encryption] to be configured before the |
| 16 | +initial startup. Failing to do so prevents the server from starting. |
| 17 | + |
| 18 | +Encryption keys can contain any series of characters. Elastic recommends using 256-bit keys for optimal security. |
| 19 | + |
| 20 | +Those encryption keys must be added manually to the [`config/enterprise-search.yml`][config-enterprisesearch] file. By |
| 21 | +default, the list of encryption keys is empty and must be populated using one of the following formats: |
| 22 | + |
| 23 | +```yaml |
| 24 | +secret_management.encryption_keys: |
| 25 | + - my_first_encryption_key |
| 26 | + - my_second_encryption_key |
| 27 | + - ... |
| 28 | +``` |
| 29 | +
|
| 30 | +```yaml |
| 31 | +secret_management.encryption_keys: [my_first_encryption_key, my_second_encryption_key, ...] |
| 32 | +``` |
| 33 | +
|
| 34 | +> :information_source: To generate a strong encryption key, for example using the AES-256 cipher, you can use the |
| 35 | +> OpenSSL utility or any other online/offline tool of your choice: |
| 36 | +> |
| 37 | +> ```console |
| 38 | +> $ openssl enc -aes-256 -P |
| 39 | +> |
| 40 | +> enter aes-256-cbc encryption password: <a strong password> |
| 41 | +> Verifying - enter aes-256-cbc encryption password: <repeat your strong password> |
| 42 | +> ... |
| 43 | +> |
| 44 | +> key=<generated AES key> |
| 45 | +> ``` |
| 46 | + |
| 47 | +### Start the server |
| 48 | + |
| 49 | +To include Enterprise Search in the stack, run Docker Compose from the root of the repository with an additional command |
| 50 | +line argument referencing the `enterprise-search-compose.yml` file: |
16 | 51 |
|
17 | 52 | ```console
|
18 |
| -$ docker-compose -f docker-compose.yml -f extensions/app-search/app-search-compose.yml up |
| 53 | +$ docker-compose -f docker-compose.yml -f extensions/enterprise-search/enterprise-search-compose.yml up |
19 | 54 | ```
|
20 | 55 |
|
21 | 56 | Allow a few minutes for the stack to start, then open your web browser at the address http://localhost:3002 to see the
|
22 |
| -App Search home page. |
| 57 | +Enterprise Search home page. |
23 | 58 |
|
24 |
| -App Search is configured on first boot with the following default credentials: |
| 59 | +Enterprise Search is configured on first boot with the following default credentials: |
25 | 60 |
|
26 |
| -* user: *app_search* |
| 61 | +* user: *enterprise_search* |
27 | 62 | * password: *changeme*
|
28 | 63 |
|
29 | 64 | ## Security
|
30 | 65 |
|
31 |
| -The App Search password is defined inside the Compose file via the `APP_SEARCH_DEFAULT_PASSWORD` environment variable. |
32 |
| -We highly recommend choosing a more secure password than the default one for security reasons. |
| 66 | +The Enterprise Search password is defined inside the Compose file via the `ENT_SEARCH_DEFAULT_PASSWORD` environment |
| 67 | +variable. We highly recommend choosing a more secure password than the default one for security reasons. |
33 | 68 |
|
34 |
| -To do so, change the value `APP_SEARCH_DEFAULT_PASSWORD` environment variable inside the Compose file **before the first |
| 69 | +To do so, change the value `ENT_SEARCH_DEFAULT_PASSWORD` environment variable inside the Compose file **before the first |
35 | 70 | boot**:
|
36 | 71 |
|
37 | 72 | ```yaml
|
38 |
| -app-search: |
| 73 | +enterprise-search: |
39 | 74 |
|
40 | 75 | environment:
|
41 |
| - APP_SEARCH_DEFAULT_PASSWORD: {{some strong password}} |
| 76 | + ENT_SEARCH_DEFAULT_PASSWORD: {{some strong password}} |
42 | 77 | ```
|
43 | 78 |
|
44 |
| -> :warning: The default App Search password can only be set during the initial boot. Once the password is persisted in |
45 |
| -> Elasticsearch, it can only be changed via the Elasticsearch API. |
| 79 | +> :warning: The default Enterprise Search password can only be set during the initial boot. Once the password is |
| 80 | +> persisted in Elasticsearch, it can only be changed via the Elasticsearch API. |
46 | 81 |
|
47 |
| -For more information, please refer to [Security and User Management][appsearch-security]. |
| 82 | +For more information, please refer to [User Management and Security][enterprisesearch-security]. |
48 | 83 |
|
49 |
| -## Configuring App Search |
| 84 | +## Configuring Enterprise Search |
50 | 85 |
|
51 |
| -The App Search configuration is stored in [`config/app-search.yml`][config-appsearch]. You can modify this file using |
52 |
| -the [Default App Search configuration][appsearch-config] as a reference. |
| 86 | +The Enterprise Search configuration is stored in [`config/enterprise-search.yml`][config-enterprisesearch]. You can |
| 87 | +modify this file using the [Default Enterprise Search configuration][enterprisesearch-config] as a reference. |
53 | 88 |
|
54 | 89 | You can also specify the options you want to override by setting environment variables inside the Compose file:
|
55 | 90 |
|
56 | 91 | ```yaml
|
57 |
| -app-search: |
| 92 | +enterprise-search: |
58 | 93 |
|
59 | 94 | environment:
|
60 |
| - app_search.auth.source: standard |
| 95 | + ent_search.auth.source: standard |
61 | 96 | worker.threads: '6'
|
62 | 97 | ```
|
63 | 98 |
|
64 |
| -Any change to the App Search configuration requires a restart of the App Search container: |
| 99 | +Any change to the Enterprise Search configuration requires a restart of the Enterprise Search container: |
65 | 100 |
|
66 | 101 | ```console
|
67 |
| -$ docker-compose -f docker-compose.yml -f extensions/app-search/app-search-compose.yml restart app-search |
| 102 | +$ docker-compose -f docker-compose.yml -f extensions/enterprise-search/enterprise-search-compose.yml restart enterprise-search |
68 | 103 | ```
|
69 | 104 |
|
70 |
| -Please refer to the following documentation page for more details about how to configure App Search inside a Docker |
71 |
| -container: [Run App Search as a Docker container][appsearch-docker]. |
| 105 | +Please refer to the following documentation page for more details about how to configure Enterprise Search inside a |
| 106 | +Docker container: [Running Enterprise Search Using Docker][enterprisesearch-docker]. |
72 | 107 |
|
73 | 108 | ## See also
|
74 | 109 |
|
75 |
| -[App Search Self-Managed documentation][appsearch-selfmanaged] |
| 110 | +[Enterprise Search documentation][enterprisesearch-docs] |
76 | 111 |
|
77 | 112 |
|
78 |
| -[config-appsearch]: ./config/app-search.yml |
| 113 | +[config-enterprisesearch]: ./config/enterprise-search.yml |
79 | 114 |
|
80 |
| -[appsearch-security]: https://swiftype.com/documentation/app-search/self-managed/security |
81 |
| -[appsearch-config]: https://swiftype.com/documentation/app-search/self-managed/configuration |
82 |
| -[appsearch-docker]: https://swiftype.com/documentation/app-search/self-managed/installation#docker |
83 |
| -[appsearch-selfmanaged]: https://swiftype.com/documentation/app-search/self-managed/overview |
| 115 | +[enterprisesearch-encryption]: https://www.elastic.co/guide/en/enterprise-search/current/encryption-keys.html |
| 116 | +[enterprisesearch-security]: https://www.elastic.co/guide/en/workplace-search/current/workplace-search-security.html |
| 117 | +[enterprisesearch-config]: https://www.elastic.co/guide/en/enterprise-search/current/configuration.html |
| 118 | +[enterprisesearch-docker]: https://www.elastic.co/guide/en/enterprise-search/current/docker.html |
| 119 | +[enterprisesearch-docs]: https://www.elastic.co/guide/en/enterprise-search/current/index.html |
0 commit comments