-
Notifications
You must be signed in to change notification settings - Fork 25.8k
Document the declarative plugins configuration file #80760
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,7 +1,7 @@ | ||
| [[plugin-management]] | ||
| == Plugin Management | ||
|
|
||
| The `plugin` script is used to install, list, and remove plugins. It is | ||
| Use the `elasticsearch-plugin` command line tool to install, list, and remove plugins. It is | ||
| located in the `$ES_HOME/bin` directory by default but it may be in a | ||
| different location depending on which Elasticsearch package you installed: | ||
|
|
||
|
|
@@ -26,6 +26,13 @@ Otherwise run `bin/elasticsearch-plugin` as the user that owns all of the Elasti | |
| files. | ||
| ===================== | ||
|
|
||
| [discrete] | ||
| [[plugin-management-docker]] | ||
| === Docker | ||
|
|
||
| If you run {es} using Docker, you can manage plugins using a | ||
| <<manage-plugins-using-configuration-file,configuration file>>. | ||
|
|
||
| [[installation]] | ||
| === Installing Plugins | ||
|
|
||
|
|
@@ -279,3 +286,52 @@ The default location of the `plugins` directory depends on which package you ins | |
| * {ref}/zip-windows.html#windows-layout[Directory layout of Windows `.zip` archives] | ||
| * {ref}/deb.html#deb-layout[Directory layout of Debian package] | ||
| * {ref}/rpm.html#rpm-layout[Directory layout of RPM] | ||
|
|
||
|
|
||
| [[manage-plugins-using-configuration-file]] | ||
| === Manage plugins using a configuration file | ||
|
|
||
| [IMPORTANT] | ||
| .Docker only | ||
| ===================== | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Not a big deal, but we only require four delimiters. No real reason to use more. For example:
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I was copying from other lines in the file. I'll remember that for the future. |
||
| This feature is only available for https://www.docker.elastic.co/[official {es} | ||
| Docker images]. Other {es} distributions will not start with a | ||
| plugin configuration file. | ||
| ===================== | ||
|
|
||
| If you run {es} using Docker, you can manage plugins using a declarative configuration file. | ||
| When {es} starts up, it will compare the plugins in the file with those | ||
| that are currently installed, and add or remove plugins as required. {es} | ||
pugnascotia marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| will also upgrade offical plugins when you upgrade {es} itself. | ||
|
|
||
| The file is called `elasticsearch-plugins.yml`, and must be placed in the | ||
| Elasticsearch configuration directory, alongside `elasticsearch.yml`. Here | ||
| is an example: | ||
|
|
||
| [source,yaml] | ||
| ---- | ||
| plugins: | ||
| - id: analysis-icu | ||
| - id: repository-azure | ||
| - id: custom-mapper | ||
| location: https://example.com/archive/custom-mapper-1.0.0.zip | ||
| ---- | ||
|
|
||
| This example installs the official `analysis-icu` and | ||
| `repository-azure` plugins, and one unofficial plugin. Every plugin must provide | ||
| an `id`. Unofficial plugins must also provide a `location`. This is | ||
| typically a URL, but Maven coordinates are also supported. The downloaded | ||
| plugin's name must match the ID in the configuration file. | ||
|
|
||
| While {es} will respect the | ||
| https://docs.oracle.com/javase/8/docs/technotes/guides/net/proxies.html[standard | ||
| Java proxy system properties] when downloading plugins, you can also configure an | ||
| HTTP proxy to use explicitly in the configuration file. For example: | ||
|
|
||
| [source,yaml] | ||
| ---- | ||
| plugins: | ||
| - id: custom-mapper | ||
| location: https://example.com/archive/custom-mapper-1.0.0.zip | ||
| proxy: proxy.example.com:8443 | ||
| ---- | ||
Uh oh!
There was an error while loading. Please reload this page.