Quick Start Guide
Calliope Integration: This component is integrated into the Calliope AI platform. Some features and configurations may differ from the upstream project.
Get WAIIDE running in under 5 minutes!
Prerequisites
- Docker 20.10+ installed
- (For JupyterHub) JupyterHub 3.0+ with DockerSpawner
Standalone Deployment (Development)
1. Run the container
docker run -d \
--name waiide \
-p 8070:8070 \
calliopeai/waiide:latest2. Access WAIIDE
Open http://localhost:8070 in your browser.
3. Check health
curl http://localhost:8070/api/servicesJupyterHub Deployment
1. Create Docker network
docker network create jupyterhub-network2. Add to jupyterhub_config.py
c.JupyterHub.spawner_class = 'dockerspawner.DockerSpawner'
c.DockerSpawner.image = 'calliopeai/waiide:latest'
c.DockerSpawner.network_name = 'jupyterhub-network'
c.DockerSpawner.volumes = {
'jupyterhub-user-{username}': '/home/{username}'
}
c.Spawner.default_url = '/ide'3. Start JupyterHub
jupyterhub -f jupyterhub_config.py4. Login and spawn
- Navigate to http://localhost:8000
- Login with your credentials
- Start your server
- Automatically redirected to WAIIDE!
Docker Compose Deployment
1. Create docker-compose.yml
version: '3.8'
services:
jupyterhub:
image: jupyterhub/jupyterhub:4
container_name: jupyterhub
ports:
- "8000:8000"
volumes:
- ./jupyterhub_config.py:/srv/jupyterhub/jupyterhub_config.py
environment:
DOCKER_NETWORK_NAME: jupyterhub-network
networks:
- jupyterhub-network
networks:
jupyterhub-network:
name: jupyterhub-network2. Start services
docker-compose up -dKubernetes Deployment
1. Create namespace
kubectl create namespace jupyterhub2. Install with Helm
helm repo add jupyterhub https://jupyterhub.github.io/helm-chart/
helm repo update
helm install jupyterhub jupyterhub/jupyterhub \
--namespace jupyterhub \
--values values.yaml3. values.yaml configuration
singleuser:
image:
name: calliopeai/waiide
tag: latest
defaultUrl: "/proxy/8081/"
storage:
dynamic:
storageClass: standard
cpu:
limit: 2
guarantee: 0.5
memory:
limit: 4G
guarantee: 1GVerify Installation
Check container status
# Docker
docker ps | grep waiide
# Kubernetes
kubectl get pods -n jupyterhubTest API endpoints
# Standalone
curl http://localhost:8080/api
# JupyterHub (from inside network)
curl http://jupyter-username:8080/apiCheck logs
# Docker
docker logs waiide
# JupyterHub spawned container
docker logs jupyter-usernameCommon Issues
Container exits immediately
- Check logs:
docker logs waiide - Ensure port 8080 is not in use
Can’t access WAIIDE
- Wait 15-20 seconds for initialization
- Check firewall rules for port 8080
JupyterHub spawn fails
- Verify Docker network exists
- Check spawner configuration
- Ensure image is pulled:
docker pull calliopeai/waiide:latest