Node.js API service for executing Java code in isolated Docker containers. Used on the Hydra cluster at SUNY New Paltz CS Lab.
Originally developed by lettecegobiln.
- Node.js 18, Express
- SQLite (API key management)
- Dockerode (container orchestration)
- Runs Java code in ephemeral Docker containers
Deployed as a Kubernetes pod in the hydra-infra namespace, accessible at https://hydra.newpaltz.edu/java.
# Build
sudo buildah bud -t docker-java-executor-java-executor:latest .
# Import to containerd
sudo buildah push docker-java-executor-java-executor:latest docker-archive:/tmp/java-executor.tar:docker.io/library/docker-java-executor-java-executor:latest
sudo /var/lib/rancher/rke2/bin/ctr --address /run/k3s/containerd/containerd.sock --namespace k8s.io images import /tmp/java-executor.tar