在wsl-ubuntu中如何通過 docker 啟動 gpu-jupyter
在 wsl-ubuntu 里通過 docker 啟動 gpu-jupyter
0. 背景
今天突然想嘗試一下在 wsl-ubuntu 里通過 docker 啟動支持 gpu 的 jupyter,那就開始著手干吧。
1. 安裝 docker-ce
在 wsl-ubuntu 里面安裝 docker-ce,先運行以下命令卸載所有沖突的包,
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
使用 apt 存儲庫安裝,設置 Docker 的 apt 存儲庫。
# Add Docker's official GPG key: sudo apt-get update sudo apt-get install ca-certificates curl gnupg sudo install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg sudo chmod a+r /etc/apt/keyrings/docker.gpg # Add the repository to Apt sources: echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt-get update
安裝 Docker 軟件包。
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
通過運行 hello-world 映像來驗證 Docker 引擎安裝是否成功。
sudo docker run hello-world
您現(xiàn)在已經(jīng)成功安裝并啟動了 Docker Engine。
refer: https://docs.docker.com/engine/install/ubuntu/
2. 安裝 NVIDIA Container Toolkit
使用 Apt 安裝,配置生產(chǎn)存儲庫,
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
&& curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list從存儲庫更新包列表,
sudo apt-get update
安裝 NVIDIA Container Toolkit 軟件包,
sudo apt-get install -y nvidia-container-toolkit
refer: https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html
3. 使用 nvidia-ctk 命令配置容器運行
使用 nvidia-ctk 命令配置容器運行時,
sudo nvidia-ctk runtime configure --runtime=docker
nvidia-ctk 命令修改主機上的 /etc/docker/daemon.json 文件。該文件已更新,以便 Docker 可以使用 NVIDIA 容器運行時。
重新啟動 Docker 守護進程,
sudo systemctl restart docker
refer: https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html
4. 通過 docker 運行 nvidia-smi
使用 Docker 運行示例工作負載,
sudo docker run --rm --runtime=nvidia --gpus all ubuntu nvidia-smi
輸入結(jié)果如下,

refer: https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/sample-workload.html
5. 運行 gpu-jupyter
使用 Docker 運行 gpu-jupyter,
mkdir /u01/data/jupyter-work; chmod 777 /u01/data/jupyter-work docker run --gpus all -d --name gpu-jupyter --network host -v /u01/data/jupyter-work:/home/jovyan/work -e GRANT_SUDO=yes -e JUPYTER_ENABLE_LAB=yes --user root cschranz/gpu-jupyter:v1.6_cuda-12.0_ubuntu-22.04
refer: https://github.com/iot-salzburg/gpu-jupyter
6. 訪問 gpu-jupyter
查看 gpu-jupyter 的 login token,
token=$(docker exec -it gpu-jupyter jupyter server list | grep -oP '(?<=token=)[a-zA-Z0-9]+') echo $token
使用瀏覽器打開 http://127.0.0.1:8888/lab 進行訪問,

7. 測試 gpu-jupyter 是否可以訪問 cuda
import torchtorch.cuda.is_available()
torch.__version__
輸出結(jié)果如下,

完結(jié)!
到此這篇關于在wsl-ubuntu中如何通過 docker 啟動 gpu-jupyter的文章就介紹到這了,更多相關docker 啟動 gpu-jupyter內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Docker 和 Containerd 目錄結(jié)構及存儲機制詳解
Docker和Containerd是兩種流行的容器運行時工具,它們都有自己的目錄結(jié)構和存儲機制,本文詳細介紹了Docker和Containerd的目錄結(jié)構和存儲機制,并對比了它們之間的主要區(qū)別,包括存儲路徑、掛載點管理、配置文件和日志文件,感興趣的朋友一起看看吧2025-02-02
解決docker run hello-world遇到錯誤消息-error during&n
這篇文章主要介紹了解決docker run hello-world遇到錯誤消息-error during conne問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-06-06
Docker環(huán)境下安裝與配置 Nexus的超詳細指南
這篇文章主要為大家詳細介紹了Docker環(huán)境下安裝與配置 Nexus的超詳細指南,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下2025-09-09

