-
Notifications
You must be signed in to change notification settings - Fork 1
Geode Docker Compose
This page describes how to create a Docker environment and launch a Geode cluster using docker-compose
.
❗ You must first install Docker and Docker Compose. See References for download links.
create_docker -cluster mydocker
By default, the create_docker command adds two (2) Geode servers (members) in the cluster. You can change the number of servers using the -count
option. For example, the following command adds four (4) servers.
# Create Hazelcast cluster with 4 members
create_docker -cluster mydocker -count 4
If you are running Docker containers other than Geode containers and they need to connect to the Geode cluster, then specify host IP address that is accessble form the containers using the -host
option. For example, the following example specifies the host IP, host.docker.internal
, which is defined by Docker Desktop. Please run create_docker -?
or man create_docker
for the usage.
create_docker -cluster mydocker -host host.docker.internal
First, change directory to mydocker
.
cd_docker mydocker
The mydocker
directory structure is shown below.
mydocker
├── .env
├── README.md
├── docker-compose.yaml
└── padogrid
├── etc
│ ├── cache.xml
│ ├── gemfire.properties
│ ├── hibernate.cfg-mysql.xml
│ ├── hibernate.cfg-postgresql.xml
│ ├── log4j2.properties
│ └── prometheus.yml
├── lib
│ ├── padogrid-core-0.9.0-SNAPSHOT.jar
│ ├── jmx_prometheus_javaagent-0.11.0.jar
│ ├── log4j-api-2.11.2.jar
│ └── log4j-core-2.11.2.jar
├── log
├── plugins
│ └── padogrid-core-0.9.0-SNAPSHOT-tests.jar
└── stats
Edit the .env
file as needed. For example, you can change the host IP by setting the HOSTNAME_FOR_CLIENTS
environment variable in this file.
vi .env
Configure Geode servers by editing padogrid/etc/gemfire.properties
and padogrid/etc/cache.xml
.
vi padogrid/etc/gemfire.properties
vi padogrid/etc/cache.xml
Place your application jar files in the padogrid/plugins
directory, which already contains PadoGrid test jar for running perf_test
.
ls padogrid/plugins/
docker-compose up
gfsh
must be run in the locator container.
docker container exec -it mydocker_locator_1 bash
gfsh
gfsh>connect --locator=locator[10334]
gfsh>list members
Output:
Member Count : 3
Name | Id
------- | -------------------------------------------------------------
locator | 192.168.128.2(locator:35:locator)<ec><v0>:41000 [Coordinator]
server1 | 192.168.128.3(server1:33)<v1>:41000
server2 | 192.168.128.4(server2:33)<v1>:41000
URL: http://localhost:7070/pulse
URL: http://localhost:7080/geode/swagger-ui.html
You can run perf_test
as is without modifications.
create_app
cd_app perf_test; cd bin_sh
./test_ingestion -run
Ctrl-C from the docker-compose up
command and prune the containers.
docker-compose down
docker container prune
- Install Docker, https://docs.docker.com/install/.
- Install Docker Compose, https://docs.docker.com/compose/install/.
PadoGrid Manual
Overview
- Home
- PadoGrid in 5 Minutes
- Quick Start
- Introduction
- Bundle Catalogs
- Building PadoGrid
- Supported Data Grid Products and Downloads
- PadoGrid Components
- Installing PadoGrid
- Root Workspaces Environments (RWEs)
- Initializing PadoGrid
- Bash Auto-Completion
- Viewing PadoGrid Summaries
- Updating Products
- Upgrading PadoGrid
- Migrating Workspaces
- PadoGrid Pods
- Kubernetes
- Docker
- Apps
- Software List
Operations
- Workspace Lifecycle Management
- Creating RWE
- Creating Workspace and Starting Cluster
- Managing Workspaces
- Understanding Workspaces
- Understanding Clusters
- Running Clusters
- Default Port Numbers
- Running Clusters Independent of PadoGrid
- Running Apps
- Understanding Groups
- Running Groups
- Understanding Bundles
- User Bundle Repos
- Using Bundle Templates
- Bundle Repo Guidelines
- User Bundle Catalogs
- Private Bundle Repos
- Gitea Repos
- Running Bundles in Container
- PadoGrid Addon Jars
- Understanding PadoGrid Pods
- Tested Vagrant Boxes
- VM-Enabled Pods
- Multitenancy
- Multitenancy Best Practices
- PadoGrid Configuration Files
Tools
Platforms
Clouds
Pado
Geode/GemFire
- Geode CLASSPATH
- Geode Kubernetes
- Geode Minikube
- Geode Minikube on WSL
- Geode Docker Compose
- Geode Grafana App
- Geode
perf_test
App - Geode WAN Example
- Geode Workspaces on VMs
- Geode on AWS EC2
- Reactivating Geode Workspaces on AWS EC2
Hazelcast/Jet
- Hazelcast CLASSPATH
- Creating Jet Workspace
- Configuring Hazelcast Addon
- HQL Query
- Hazelcast Kubernetes
- Hazelcast GKE
- Hazelcast Minikube
- Hazelcast Minikube on WSL
- Hazelcast Minishift/CDK
- Hazelcast OpenShift
- Hazelcast Docker Compose
- Hazelcast Desktop App
- Hazelcast Grafana App
- Hazelcast
jet_demo
App - Hazelcast
perf_test
App - Hazelcast WAN Example
- Hazelcast Workspaces on VMs
- Hazelcast on AWS EC2
- Reactivating Hazelcast Workspaces on AWS EC2
ComputeDB/SnappyData
Coherence
Hadoop
Kafka/Confluent
Mosquitto
- Mosquitto CLASSPATH
- Mosquitto Overview
- Installing/Building Mosquitto
- Clustering MQTT
- Cluster Archetypes
- Enabling Mosquitto SSL/TLS
- Mosquitto Docker Compose
- MQTT perf_test App
Redis
Spark