Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "BaSyx / Documentation / Components / Registry"
m |
m (Adds reference to context configuration) |
||
Line 23: | Line 23: | ||
docker rm registry | docker rm registry | ||
− | == Configuration == | + | == Backend Configuration == |
By default, the registry uses the non-persistent InMemory-"backend". This can be changed by providing a registry configuration file when starting the container. The configuration file contains a single property '''registry.properties''' and looks like this: | By default, the registry uses the non-persistent InMemory-"backend". This can be changed by providing a registry configuration file when starting the container. The configuration file contains a single property '''registry.properties''' and looks like this: | ||
Line 52: | Line 52: | ||
java -jar -DBASYX_REGISTRY="C:/tmp/registry.properties" registry.jar | java -jar -DBASYX_REGISTRY="C:/tmp/registry.properties" registry.jar | ||
+ | |||
+ | == Context Configuration == | ||
+ | |||
+ | As with the other components, the registry's context can be customized using the [[BaSyx_/_Documentation_/_Components_/_Context | context configuration]]. |
Revision as of 11:32, 7 October 2020
Overview | Interface | Component |
Contents
Registry Component
The Registry is a central component to the Asset Administration Shell (AAS) infrastructure for looking up available AAS and their contained submodels. Hence, it is realized as a separate component that can also be containerized. Currently, there exists a single Registry component that can be configured to utilize different types of backends.
Startup
To easily start the registry component, you can use the following command:
docker run --name=registry -p 8082:4000 eclipsebasyx/aas-registry:latest
Now the endpoint for registering and looking up AAS will be:
http://localhost:8082/registry/api/v1/registry
And the container can be stopped, started and removed using its name (see --name):
docker stop registry docker start registry docker rm registry
Backend Configuration
By default, the registry uses the non-persistent InMemory-"backend". This can be changed by providing a registry configuration file when starting the container. The configuration file contains a single property registry.properties and looks like this:
registry.backend=SQL
Together with SQL, the values InMemory and MongoDB are also allowed. By default, this configuration file is assumed to be located at "/usr/share/config/registry.properties" within the container. Thus, another configuration file can be set by mounting a local configuration file into the container during startup. As an example, a local folder containing the configuration files can be mounted using:
docker run --name=registry -p 8082:4000 -v C:/tmp:/usr/share/config eclipsebasyx/aas-registry:latest
SQL Backend
Uses an SQL backend, e.g. postgres to persist registry entries. The connector to the SQL database can be configured with its own configuration file.
MongoDB Backend
Uses a MongoDB backend. Both, the SQL and the MongoDB variants can be configured using the .properties files in src/main/resources of the components. Similar to the SQL backend, for the MongoDB backend, another configuration file can be specified.
InMemory
Stores the Registry entries in RAM. !!Please be aware that this is not persistent and therefore only for testing! After component restart, all entries are lost. Use this only for testing!!
Java Implementation
Within the project, the component can be found in the Java repository at Java. In this project, the executable can take the parameter BASYX_REGISTRY to configure the path of the registry configuration file. For example, you can specify the path of the registry configuration file via
java -jar -DBASYX_REGISTRY="C:/tmp/registry.properties" registry.jar
Context Configuration
As with the other components, the registry's context can be customized using the context configuration.