odpi/egeria
Old docker image - use odpi/egeria-platform
500K+
Egeria provides the Apache 2.0 licensed open metadata and governance type system, frameworks, APIs, event payloads and interchange protocols to enable tools, engines and platforms to exchange metadata in order to get the best value from data whilst ensuring it is properly governed.
For the latest version use odpi/egeria-platform
This *nix based image contains all the required runtime artifacts for egeria - for example the main server chassis, the user interface, required dependencies etc.
Specifically it contains the full egeria assembly
This docker image is primarily intended to be used as part of a series of tutorials we offer to demonstrate and explain egeria. The environments documented there will allow you to get an example environment up and running in very little time on either docker-compose, or within a kubernetes cluster.
It's recommended you use the tutorials above to get started. Below are some examples of using the image standalone. Refer to the main Egeria docs for further information
$ docker run -p 9443:9443 odpi/egeria:latest
Picked up JAVA_TOOL_OPTIONS:
ODPi Egeria
____ __ ___ ___ ______ _____ ____ _ _ ___
/ __ \ / |/ // | / ____/ / ___/ ___ ____ _ __ ___ ____ / _ \ / / __ / / / _ /__ ____ _ _
/ / / // /|_/ // /| | / / __ \__ \ / _ \ / __/| | / // _ \ / __/ / /_/ // // | / _\ / /_ / | / _// || |
/ /_/ // / / // ___ |/ /_/ / ___/ // __// / | |/ // __// / / __ // // / \ / /_ / _// / // / / / / /
\____//_/ /_//_/ |_|\____/ /____/ \___//_/ |___/ \___//_/ /_/ /_/ \__/\//___//_/ \__//_/ /_/ /_/
:: Powered by Spring Boot (v2.2.5.RELEASE) ::
Wed Mar 25 15:11:54 GMT 2020 No OMAG servers listed in startup configuration Wed Mar 25 15:11:58 GMT 2020 OMAG server platform ready for more configuration
All requests to egeria should be via https on port 9443
Use
$ docker run -p 8080:8080 odpi/egeria:latest
In this older version only http was supported, so the default port is 8080 (http).
$ docker run -p 8443:8443 odpi/egeria:latest /bin/bash -c "java -jar /opt/egeria/user-interface/ui-chassis-spring-*.jar"
Picked up JAVA_TOOL_OPTIONS:
ODPi Egeria
______ _ __ __ ____
/ ____/ ____ _ ___ _____ (_) ____ _ / / / / / _/
/ __/ / __ `/ / _ \ / ___/ / / / __ `/ / / / / / /
/ /___ / /_/ / / __/ / / / / / /_/ / / /_/ / _/ /
/_____/ \__, / \___/ /_/ /_/ \__,_/ \____/ /___/
/____/
:: Powered by Spring Boot (v2.2.5.RELEASE) ::
$ docker run -it -p 8443:8443 odpi/egeria:latest /bin/bash -
bash-4.4$ pwd
/opt/egeria
bash-4.4$ ls
LICENSE NOTICE clients conformance-suite server user-interface utilities
bash-4.4$
By default any data you create whilst the docker image is running will get written to the image, and may only get saved if you specifically commit. Best practice is to use a docker volume or mount point. More information on this can be found at [https://docs.docker.com/storage/#:~:text=Volumes%20are%20the%20best%20way,modify%20them%20at%20any%20time.](Docker docs).
As of version 2.6 (or master as of 18 Dec 2020), Egeria saves all data when running to the 'data' directory. In the docker image this is at '/deployments/data'
Similarly when using this image within docker-compose or kubernetes you should ensure persistent storage is mounted over this directory. Our docker-compose and k8s examples will do this as of 2.6
An example using docker:
Create the volume locally on your docker host:
$ docker volume create egeria-data
egeria-data
List your volumes:
$ docker volume ls
DRIVER VOLUME NAME
local egeria-data
Find out more about where that volume is stored locally:
$ docker volume inspect egeria-data
[
{
"CreatedAt": "2020-12-17T12:37:11Z",
"Driver": "local",
"Labels": {},
"Mountpoint": "/data/docker/volumes/egeria-data/_data",
"Name": "egeria-data",
"Options": {},
"Scope": "local"
}
]
With that in place we can now run our docker image, this time making use of the volume above to persist data ie:
$ docker run -p 9443:9443 -v source=egeria-data,target=/deployments/data odpi/egeria:latest
/usr/local/s2i/run: line 15: /opt/jboss/container/maven/default//scl-enable-maven: No such file or directory
Starting the Java application using /opt/jboss/container/java/run/run-java.sh ...
INFO exec java -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -XX:MaxMetaspaceSize=100m -XX:+ExitOnOutOfMemoryError -XX:MaxMetaspaceSize=1g -cp "." -jar /deployments/server/server-chassis-spring-2.6-SNAPSHOT.jar
ODPi Egeria
____ __ ___ ___ ______ _____ ____ _ _ ___
/ __ \ / |/ // | / ____/ / ___/ ___ ____ _ __ ___ ____ / _ \ / / __ / / / _ /__ ____ _ _
/ / / // /|_/ // /| | / / __ \__ \ / _ \ / __/| | / // _ \ / __/ / /_/ // // | / _\ / /_ / | / _// || |
/ /_/ // / / // ___ |/ /_/ / ___/ // __// / | |/ // __// / / __ // // / \ / /_ / _// / // / / / / /
\____//_/ /_//_/ |_|\____/ /____/ \___//_/ |___/ \___//_/ /_/ /_/ \__/\//___//_/ \__//_/ /_/ /_/
:: Powered by Spring Boot (v2.3.3.RELEASE) ::
Note that you'll be able to see the image version, build date, last git update etc (this is an old example from 1.6, when we used http & port 8080)
$ docker inspect --format='{{range $k, $v := .ContainerConfig.Labels}} {{- printf "%s = \"%s\"\n" $k $v -}} {{end}}' odpi/egeria:latest
org.opencontainers.image.vendor = "= ODPi org.opencontainers.image.title = Egeria org.opencontainers.image.description = Common image for core ODPi Egeria runtime. org.opencontainers.image.url = https://egeria.odpi.org/ org.opencontainers.image.source = https://github.com/odpi/egeria org.opencontainers.image.authors = ODPi Egeria org.opencontainers.image.revision = 2e8b97d org.opencontainers.image.licenses = Apache-2.0 org.opencontainers.image.created = 2020-03-25T12:03:52+0000 org.opencontainers.image.version = 1.6-SNAPSHOT org.opencontainers.image.documentation = https://egeria.odpi.org/open-metadata-resources/open-metadata-deployment/docker/egeria/ org.opencontainers.image.ext.vcs-date = 2020-03-25T11:46:50+0000 org.opencontainers.image.ext.docker.cmd = docker run -d -p 8080:8080 odpi/egeria org.opencontainers.image.ext.docker.cmd.devel = docker run -d -p 8080:8080 -p 5005:5005 -e JAVA_DEBUG=true odpi/egeria org.opencontainers.image.ext.docker.debug = docker exec -it /bin/sh org.opencontainers.image.ext.docker.params = JAVA_DEBUG=set to true to enable JVM debugging"
License: CC BY 4.0, Copyright Contributors to the ODPi Egeria project.
docker pull odpi/egeria