Setting up the GEM Dashboard¶
Requirements:
- [x] GEM Server package
- [x] GEM Dashboard package
- [x] Linux
- [x] Docker
Docker Deployment¶
Copy the environment file:
cp .env.example .env
Edit .env file and update with your IP address and port:
NOTE:
Edit from HTTP to HTTPS and use the IP Address and port that you see after you start the GEM server.
NEXT_PUBLIC_API_BASE_URL=https://your-ip-address:port
NODE_TLS_REJECT_UNAUTHORIZED=0
- Build and run with Docker Compose:
docker compose build
docker compose up -d
- Access the dashboard at https://localhost:3000
To stop the service:
docker compose down
Offline Deployment Guide¶
This guide provides instructions for deploying the GEM Dashboard in an environment with zero internet access.
Preparing the Docker Image¶
- On a machine with internet access, build the Docker image:
docker compose build
- Export the Docker image to a tar file:
./export-docker-images.sh
This script will create a docker-images-export directory with the exported image.
Deploying on the Offline Machine¶
-
Transfer the
docker-images-exportdirectory to the offline machine using a physical medium (USB drive, external hard drive). -
Load the Docker image on the offline machine:
docker load -i gem-dashboard.tar
- Create a
docker-compose.ymlfile on the offline machine:
services:
gem-dashboard:
image: gem-dashboard:latest
ports:
- "3000:3000"
environment:
- NEXT_PUBLIC_API_BASE_URL=https://your-offline-api-ip:port
restart: unless-stopped
healthcheck:
test: ["CMD", "wget", "-q", "--spider", "http://localhost:3000"]
interval: 30s
timeout: 10s
retries: 3
networks:
app-network:
driver: bridge
internal: true # This prevents internet access
- Start the application:
docker-compose up -d
- Access the dashboard at https://localhost:3000