getting started
Install on Ubuntu
Install Docker Engine on Ubuntu, add NVIDIA GPU support if you have a GPU, then pull and run DeepLM Ops.
This guide installs Docker Engine on Ubuntu and runs DeepLM Ops from the terminal. Docker Engine uses the machine's memory directly, so make sure at least 8 GB is free.
1. Install Docker Engine
The quickest way is Docker's install script:
curl -fsSL https://get.docker.com | shPrefer to install from the apt repository? These are the steps from Docker's documentation:
sudo apt-get update
sudo apt-get install -y ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-pluginSee Docker's Ubuntu guide for the supported Ubuntu releases.
2. Run Docker without sudo
Add your user to the docker group, then log out and back in:
sudo usermod -aG docker $USER3. Check that Docker works
docker --version
docker run --rm hello-world4. Optional: NVIDIA GPU support
Skip this if you do not have an NVIDIA GPU. DeepLM Ops then runs on the CPU.
- Install the NVIDIA driver, and check that
nvidia-smishows your GPU. - Install the NVIDIA Container Toolkit. Follow NVIDIA's install guide.
- Tell Docker to use it, then restart Docker:
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker- Test that containers can see the GPU:
docker run --rm --gpus all ubuntu nvidia-smi5. Log in to the image registry
Accept the DeepLM GitHub org invite, then create a classic token with only read:packages. See Create your GitHub token.
docker login ghcr.io -u <your-github-username>Paste the token at the Password prompt. Docker keeps it unencrypted in ~/.docker/config.json on Linux without a credential helper, so never copy or share that file.
6. Pull the image
docker pull ghcr.io/deeplm/dlm-ops-dev:0.1.17. Run it
This command starts the demo cluster, a sample campus cluster with made-up jobs.
docker run -d --name dlm-ops -p 127.0.0.1:8090:8090 -v dlm-ops:/var/lib/dlm-ops --read-only --tmpfs /tmp --tmpfs "/run/dlm:uid=1000,gid=1000,mode=0700" --cap-drop ALL --security-opt no-new-privileges --pids-limit 256 --restart unless-stopped -e DLM_OPS_SLURM=replay ghcr.io/deeplm/dlm-ops-dev:0.1.1To ask about your own machine instead, run it without -e DLM_OPS_SLURM=replay.
With an NVIDIA GPU
Add --gpus all right after docker run -d, not at the end:
docker run -d --gpus all --name dlm-ops -p 127.0.0.1:8090:8090 -v dlm-ops:/var/lib/dlm-ops --read-only --tmpfs /tmp --tmpfs "/run/dlm:uid=1000,gid=1000,mode=0700" --cap-drop ALL --security-opt no-new-privileges --pids-limit 256 --restart unless-stopped -e DLM_OPS_SLURM=replay ghcr.io/deeplm/dlm-ops-dev:0.1.18. Open the chat page
Wait until the logs say "model ready". The first start downloads the model once (2.55 GiB).
docker logs dlm-opsOpen the http://127.0.0.1:8090/#token=... link in your browser.
Stop it
docker rm -f dlm-opsNext steps
Try the sample questions, or see Common problems if something does not work.