orientdb

Estimated reading time: 3 minutes

OrientDB a Multi-Model Open Source NoSQL DBMS that combines graphs and documents.

GitHub repo: https://github.com/orientechnologies/orientdb-docker

Library reference

This content is imported from the official Docker Library docs, and is provided by the original uploader. You can view the Docker Store page for this image at https://store.docker.com/images/orientdb

Supported tags and respective Dockerfile links

Quick reference

What is OrientDB?

OrientDB is the first Multi-Model Open Source NoSQL DBMS that combines the power of graphs and the flexibility of documents into one scalable, high-performance operational database.

logo

How to use this image

When OrientDB starts it asks for the root password. The root user is able to manage the OrientDB server: create new databases, manage users and roles. The root password can be passed to the container using an environment property:

$ docker run -d --name orientdb -p 2424:2424 -p 2480:2480 -e ORIENTDB_ROOT_PASSWORD=rootpwd orientdb

The Studio is accessible to http:// :2480 (e.g.: http://localhost:2480)

Attach persistent volumes

The docker image contains an OrientDB installation with basic configuration. If you need to provide your own config folder to override the one included in the OrientDB container, simply attach a persistent volume for configuration folder. Providing a configuration folder enables integration with software configuration tools such as Ansible, Chef or Puppet.

The same applies for the databases folder, which if local to the running container would go away as soon as it died/you killed it. Obviously use volumes from dedicated data container is another option.

$ docker run -d --name orientdb -p 2424:2424 -p 2480:2480 \
    -v <config_path>:/orientdb/config \
    -v <databases_path>:/orientdb/databases \
    -v <backup_path>:/orientdb/backup \
    -e ORIENTDB_ROOT_PASSWORD=rootpwd \
    orientdb

NOTE: don’t provide an empty config folder as volume, because OrientDB will startup with a very minimal configuration.

Running OrientDB tools

The OrientDB image contains a full fledge installation, so it is possible to run the console

$ docker run --rm -it orientdb /orientdb/bin/console.sh

or even the etl

$ docker run  --rm -it -v <config_path>:/orientdb/config orientdb /orientdb/bin/oetl.sh ../config/oetl-config.json

Override configuration parameters

Any configuration settings may be specified upon startup using the -D option prefix. For example, starting OrientDB in distributed configuration will work this way:

$ docker run -d --name orientdb -p 2424:2424 -p 2480:2480 \
    -v <config_path>:/orientdb/config \
    -v <databases_path>:/orientdb/databases \
    -v <backup_path>:/orientdb/backup \
    -e ORIENTDB_ROOT_PASSWORD=rootpwd \
    -e ORIENTDB_NODE_NAME=odb1 \
    orientdb /orientdb/bin/server.sh  -Ddistributed=true

For further configuration options please refer to the Configuration section of the online documentation.

Environment

Environment parameters such as heap size could be passed via command line:

$ docker run -d --name orientdb -p 2424:2424 -p 2480:2480 \
    -e ORIENTDB_ROOT_PASSWORD=rootpwd \
    orientdb /orientdb/bin/server.sh -Xmx8g
library, sample, orientdb