-
Notifications
You must be signed in to change notification settings - Fork 1
Running Bundles in Container
An intern bundle is a bundle that installs and runs within the scope of the local PadoGrid environment that does not have dependencies of Kubernetes, Docker, and PadoGrid Pod. In other words, it does not depend on the PadoGrid subcommands, *_k8s
, *_docker
, and *_pod
.
The online intern bundles listed in the bundle catalogs are identifiable by their names or contents. The word, k8s
, docker
, and pod
are not part of their names and are not listed in the Bundle Contents section of their documents (README.md
).
All intern bundles are runnable inside a PadoGrid container since they do not have Kubernetes, Docker, and PadoGrid Pod dependencies. This merely means that we cannot run bundles that require Kubernetes, Docker, or PadoGrid Pod inside containers.
For intern bundles that are equipped with GUI apps, you can use X11 to display them on your host OS.
X11 PadoGrid Docker Image: 0.9.28+
The PadoGrid container image versions previous to 0.9.28 do not include X11 client packages and hence, you must install them manually.
First, install and run an X11 server on your host OS following the link that applies to your OS.
- macOS: XQuartz
- Windows: Xming, MobaXterm
- Linux: Use the package manager to install X11 packages. For example, on Ubuntu,
sudo apt install xorg openbox
.
Upon completion of installing and running X11, list the display authorization entries.
xauth list
Output:
myhost.local:0 MIT-MAGIC-COOKIE-1 2a7842352bdc123b2cf92c01bf0e822b
Your output may contain more than one (1) entry. We need the one with the host name that the containers can access. For Docker Kubernetes and Minikube, you can use the entry as is. However, for OpenShift Local (CRC), you need to use the host OS IP address. For our example, we can replace the host name with its IP address (192.168.1.10) as follows.
192.168.1.10:0 MIT-MAGIC-COOKIE-1 2a7842352bdc123b2cf92c01bf0e822b
Start PadoGrid pod.
kubectl run padogrid --image=docker.io/padogrid/padogrid
kubectl exec -it padogrid -- bash
# Create a service account with 'anyuid' for starting PadoGrid pods
oc create serviceaccount myserviceaccount
oc adm policy add-scc-to-user anyuid -z myserviceaccount
# Run and login to the padogrid pod
oc run padogrid --image=docker.io/padogrid/padogrid
oc exec -it padogrid -- bash
Copy/paste the display authorization entry to the xauth add
command and set the DISPLAY
environment variable as follows.
touch ~/.Xauthority
xauth add 192.168.1.10:0 MIT-MAGIC-COOKIE-1 2a7842352bdc123b2cf92c01bf0e822b
export DISPLAY=192.168.1.10:0
To test GUI apps, install and run Hazelcast Desktop.
install_padogrid -product hazelcast-desktop
update_padogrid -product hazelcast-desktop
install_app -product hazelcast -app desktop
cd_app desktop/bin_sh
./desktop
The desktop app window should display on your primary screen.
Docker Kubernetes and Minikube:
kubectl delete pod padogrid
OpenShift Local (CRC):
oc delete pod padogrid
oc delete serviceaccounts myserviceaccount
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