| title | Installation |
|---|---|
| description | Install and configure the Generic Data Index bundle with OpenSearch or Elasticsearch. |
:::info
This bundle requires OpenSearch >= 2.7 or Elasticsearch >= 8.0.0.
:::
- Install the required dependencies:
composer require pimcore/generic-data-index-bundle- Enable the bundle in
config/bundles.php:
use Pimcore\Bundle\GenericDataIndexBundle\PimcoreGenericDataIndexBundle;
// ...
return [
// ...
PimcoreGenericDataIndexBundle::class => ['all' => true],
// ...
];- Install the bundle:
bin/console pimcore:bundle:install PimcoreGenericDataIndexBundle-
Configure the search client in your Symfony configuration (e.g.
config.yaml). See OpenSearch Client Setup or Elasticsearch Client Setup. -
Start one or more Symfony Messenger workers for index queue processing. Use a process manager like Supervisor to keep workers running. See the Symfony Messenger documentation for details.
bin/console messenger:consume pimcore_generic_data_index_queue scheduler_generic_data_index:::tip Deployment hint
For deployments without database access (e.g. CI pipelines), Doctrine ORM cache warm-up fails because it tries to detect the database version. Configure the server version explicitly in the default DBAL connection:
doctrine:
dbal:
default_connection: default
connections:
default:
...
server_version: mariadb-10.11.0:::
After installation, create the indices and queue all elements for indexing:
bin/console generic-data-index:update:index -r