Skip to main content

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.

Jump to: navigation, search

Difference between revisions of "BaSyx / Documentation / Components / Registry"

(Created page with "The registry is a central component to the AAS infrastructure. For further documentation, see the Registry wiki page. Currently,...")
 
m
 
(36 intermediate revisions by 5 users not shown)
Line 1: Line 1:
The registry is a central component to the AAS infrastructure. For further documentation, see the [[BaSyx_/_Documentation_/_API_/_Registry  | Registry wiki page.]]
+
{| class="wikitable"
 +
| [[BaSyx_/_Documentation_/_Registry | Overview]]  <nowiki>|</nowiki>  [[BaSyx_/_Documentation_/_API_/_Registry| Interface]] <nowiki>|</nowiki>  [[BaSyx_/_Documentation_/_Components_/_Registry | Component]] <nowiki>|</nowiki>  [[BaSyx_/_Documentation_/_Components_/_Registry_/_Features | Features]]
 +
|}
  
Currently, the following variants of the Registry component are provided:
+
= Registry Component =
* [https://git.eclipse.org/r/plugins/gitiles/basyx/basyx/+/master/components/basys.components/basyx.components.docker/basyx.components.simple/ InMemory] - Stores the Registry entries in RAM. !! Please be aware that this is not persistent! After component restart, all entries are lost. Use this only for testing !!
+
* [https://git.eclipse.org/r/plugins/gitiles/basyx/basyx/+/master/components/basys.components/basyx.components.docker/basyx.components.sqlregistry/ SQL] - Uses an SQL backend, e.g. postgres.
+
* [https://git.eclipse.org/r/plugins/gitiles/basyx/basyx/+/master/components/basys.components/basyx.components.docker/basyx.components.mongodbregistry/ MongoDB] - 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.
+
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.
 +
 
 +
== Download ==
 +
 
 +
The registry image is made available via [https://hub.docker.com/repository/docker/eclipsebasyx/aas-registry Docker Hub] and can be pulled by:
 +
 
 +
docker pull eclipsebasyx/aas-registry:1.5.1
 +
 
 +
Alternatively, the command described in Startup section will download the image.
 +
 
 +
== Startup ==
 +
 
 +
To easily start the registry component, you can use the following command:
 +
 
 +
docker run --name=registry -p 8082:4000 eclipsebasyx/aas-registry:1.5.1
 +
 
 +
Next, the HTTP/REST endpoint of the Registry is accessible via
 +
 
 +
http://localhost:8082/registry/api/v1/registry
 +
 
 +
If no AAS/SM is registered, an empty JSON list "[]" will be returned.
 +
 
 +
And the container can be stopped, started and removed using its name (see --name):
 +
 
 +
docker stop registry
 +
docker start registry
 +
docker rm registry
 +
 
 +
== Context Configuration ==
 +
 
 +
As with the other components, the registry's context can be customized using the [[BaSyx_/_Documentation_/_Components_/_Context | context configuration]].
 +
 
 +
== AAS Registry Configuration ==
 +
 
 +
For the AAS Registry component, a multitude of features can be configured via the registry.properties file. 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:1.5.1
 +
 
 +
In this example, the '''registry.properties''' file is located in C:/tmp/
 +
 
 +
The features of the AAS Registry component are documented on their own page:
 +
[[BaSyx_/_Documentation_/_Components_/_Registry_/_Features | Features]]
 +
 
 +
== Java Implementation ==
 +
 
 +
Within the project, the component can be found in the Java repository at [https://git.eclipse.org/r/plugins/gitiles/basyx/basyx/+/master/components/basys.components/basyx.components.docker/basyx.components.registry/src/main/java/org/eclipse/basyx/components/registry/executable/ 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

Latest revision as of 03:47, 5 February 2024

Overview | Interface | Component | Features

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.

Download

The registry image is made available via Docker Hub and can be pulled by:

docker pull eclipsebasyx/aas-registry:1.5.1

Alternatively, the command described in Startup section will download the image.

Startup

To easily start the registry component, you can use the following command:

docker run --name=registry -p 8082:4000 eclipsebasyx/aas-registry:1.5.1

Next, the HTTP/REST endpoint of the Registry is accessible via

http://localhost:8082/registry/api/v1/registry

If no AAS/SM is registered, an empty JSON list "[]" will be returned.

And the container can be stopped, started and removed using its name (see --name):

docker stop registry
docker start registry
docker rm registry

Context Configuration

As with the other components, the registry's context can be customized using the context configuration.

AAS Registry Configuration

For the AAS Registry component, a multitude of features can be configured via the registry.properties file. 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:1.5.1

In this example, the registry.properties file is located in C:/tmp/

The features of the AAS Registry component are documented on their own page: Features

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

Back to the top