Sign inSign up

gridgain/community

By gridgain

•Updated 4 days ago

GridGain is an in-memory computing platform based Apache Ignite™

Image
7

1M+

gridgain/community repository overview

⁠GridGain Docker Image

⁠About GridGain

GridGain is an in-memory computing platform built on Apache Ignite™ that includes the Apache Ignite code base plus improvements and additional functionality developed by GridGain Systems to enhance the performance and reliability of Apache Ignite. GridGain is a hardened, high-performance version of Apache Ignite for mission-critical in-memory computing applications.

⁠Network Considerations

The GridGain docker image exposes the following ports by default: 11211, 47100, 47500, and 49112. You can expose more ports as needed by adding -p <port> to the docker run command. For example, to connect a thin client to the node running inside a docker container, open port 10800:

docker run -d -p 10800:10800 gridgain/community

⁠Running In-Memory Cluster

Use the' docker run' command to run GridGain in a docker container.

sudo docker run -d gridgain/community

This command starts a single GridGain node.

⁠Providing Configuration File

When you run the image, it starts a node with the default configuration file. You can pass a custom configuration file by using the CONFIG_URI environment variable:

docker run -d \
  -e CONFIG_URI=http://myserver/config.xml gridgain/community

To mount the configuration file from the local system, use the -v option to specify the file and then use this path in the CONFIG_URI option:

docker run -d \
  -v /local/dir/config.xml:/config-file.xml \
  -e CONFIG_URI=/config-file.xml \
  gridgain/community

⁠Providing License File

If you use GridGain Enterprise or Ultimate Edition, you must provide your license file when launching nodes. The license file can be specified using the 'LICENCE_URL' variable.

docker run -d \
  -e LICENCE_URL=http://myserver/license.xml  \
  gridgain/enterprise:{version}

⁠Environment Variables

The following parameters can be passed as environment variables in the docker container:

Parameter NameDescriptionDefault
CONFIG_URIURL to the GridGain configuration file (can also be relative to the META-INF folder on the class path). The downloaded configuration file is saved to ./ignite-config.xmlN/A
OPTION_LIBSA list of link:developers-guide/setup#enabling-modules[modules] that will be enabled for the node.ignite-log4j, ignite-spring, ignite-indexing
JVM_OPTSJVM arguments passed to the GridGain instance.N/A
EXTERNAL_LIBSA list of URLs to external libraries. Refer to Deploying User Libraries.N/A
LICENCE_URLURL to the licence file. A licence is required when you run the GridGain Ultimate or Enterprise Editions.N/A

⁠In-memory and Persistent Clusters

When deploying a persistent GridGain cluster, you should permanently mount a persistent volume or local directory. GridGain stores the data in the container's file system if you do not use a persistent volume. It means that the data is erased when you remove the container. To save the data in a permanent location, mount a persistent volume.

⁠Running Persistent Cluster

Typically, GridGain can store the user data under the default work directory ({IGNITE_HOME}/work) in the container's file system. This directory is erased if you restart the docker container. To avoid this, you can:

  • Use a persistent volume to store the data.
  • Mount a local directory.

These two options are described in the following sections.

⁠Using Persistent Volume

To create a persistent volume, run the following command:

sudo docker volume create persistence-volume

This volume is mounted to a specific directory when running the GridGain docker image. Then, you can pass it to GridGain in two ways:

  • By using the IGNITE_WORK_DIR system property;
  • In the configuration file.

The following command launches the GridGain Docker image and passes the work directory to GridGain via the system property:

docker run -d \
  -v persistence-volume:/persistence \
  -e IGNITE_WORK_DIR=/persistence \
  gridgain/community
⁠Using Local Directory

Instead of creating a volume, you can mount a local directory to the container in which the GridGain image is running and use this directory to store persistent data. When restarting the container with the same command, GridGain loads the data from the directory.

mkdir work_dir

docker run -d \
  -v ${PWD}/work_dir:/persistence \
  -e IGNITE_WORK_DIR=/persistence \
  gridgain/community
  • The -v option mounts a local directory under the /persistence path in the container.
  • The -e IGNITE_WORK_DIR=/persistence option tells GridGain to use this folder as the working directory.

⁠Extended Documentation

GridGain documentation⁠ has more information about running GridGain.

Tag summary

Content type

Image

Digest

sha256:5fb05fa31…

Size

216.7 MB

Last updated

4 days ago

docker pull gridgain/community