docker支援gpu,docker可以透過nvidia-docker2來使用GPU。在daemon.json檔案中配置runtime使用nvidia,啟動容器後執行nvidia-smi就能看到所有的GPU。
docker掛載GPU的方法介紹:
使用nvidia-docker2
簡言之,使用 nvidia-docker2,可以不費吹灰之力就能使用到GPU,僅僅需要設定runtime 使用 nvidia
cat /etc/docker/daemon.json { "default-runtime": "nvidia", "runtimes": { "nvidia": { "path": "/usr/bin/nvidia-container-runtime", "runtimeArgs": [] } }, "exec-opts": ["native.cgroupdriver=systemd"] }
啟動容器之後,執行nvidia-smi 能看到所有的GPU 卡:
[root@localhost] docker run -it 98b41a1e975d bash root@6db1dd28459d:/notebooks# nvidia-smi +-----------------------------------------------------------------------------+ | NVIDIA-SMI 410.79 Driver Version: 410.79 CUDA Version: 10.0 | |-------------------------------+----------------------+----------------------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | |===============================+======================+======================| | 0 Tesla V100-SXM2... On | 00000000:8A:00.0 Off | 0 | | N/A 40C P0 57W / 300W | 4053MiB / 16130MiB | 4% Default | +-------------------------------+----------------------+----------------------+ | 1 Tesla V100-SXM2... On | 00000000:8B:00.0 Off | 0 | | N/A 38C P0 40W / 300W | 0MiB / 16130MiB | 0% Default | +-------------------------------+----------------------+----------------------+ | 2 Tesla V100-SXM2... On | 00000000:8C:00.0 Off | 0 | | N/A 42C P0 46W / 300W | 0MiB / 16130MiB | 0% Default | +-------------------------------+----------------------+----------------------+ | 3 Tesla V100-SXM2... On | 00000000:8D:00.0 Off | 0 | | N/A 39C P0 40W / 300W | 0MiB / 16130MiB | 0% Default | +-------------------------------+----------------------+----------------------+ | 4 Tesla V100-SXM2... On | 00000000:B3:00.0 Off | 0 | | N/A 39C P0 42W / 300W | 0MiB / 16130MiB | 0% Default | +-------------------------------+----------------------+----------------------+ | 5 Tesla V100-SXM2... On | 00000000:B4:00.0 Off | 0 | | N/A 41C P0 57W / 300W | 7279MiB / 16130MiB | 4% Default | +-------------------------------+----------------------+----------------------+ | 6 Tesla V100-SXM2... On | 00000000:B5:00.0 Off | 0 | | N/A 40C P0 45W / 300W | 0MiB / 16130MiB | 0% Default | +-------------------------------+----------------------+----------------------+ | 7 Tesla V100-SXM2... On | 00000000:B6:00.0 Off | 0 | | N/A 41C P0 44W / 300W | 0MiB / 16130MiB | 0% Default | +-------------------------------+----------------------+----------------------+ +-----------------------------------------------------------------------------+ | Processes: GPU Memory | | GPU PID Type Process name Usage | |=============================================================================| +-----------------------------------------------------------------------------+
透過 NVIDIA_DRIVER_CAPABILITIES 可以加入部分的library。透過 NVIDIA_VISIBLE_DEVICES 可以只使用某些 GPU 卡
[root@localhost cuda-9.0]# docker run -it --env NVIDIA_DRIVER_CAPABILITIES="compute,utility" --env NVIDIA_VISIBLE_DEVICES=0,1 98b41a1e975d bash root@97bf127ff83a:/notebooks# nvidia-smi Tue Oct 15 09:29:45 2019 +-----------------------------------------------------------------------------+ | NVIDIA-SMI 410.79 Driver Version: 410.79 CUDA Version: 10.0 | |-------------------------------+----------------------+----------------------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | |===============================+======================+======================| | 0 Tesla V100-SXM2... On | 00000000:8A:00.0 Off | 0 | | N/A 39C P0 57W / 300W | 4053MiB / 16130MiB | 3% Default | +-------------------------------+----------------------+----------------------+ | 1 Tesla V100-SXM2... On | 00000000:8B:00.0 Off | 0 | | N/A 37C P0 40W / 300W | 0MiB / 16130MiB | 0% Default | +-------------------------------+----------------------+----------------------+ +-----------------------------------------------------------------------------+ | Processes: GPU Memory | | GPU PID Type Process name Usage | |=============================================================================| +-----------------------------------------------------------------------------+
更多相關教程,請關注PHP中文網docker教學專欄。
以上是docker支援gpu麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

在Linux上使用Docker可以提高開發和部署效率。 1.安裝Docker:使用腳本在Ubuntu上安裝Docker。 2.驗證安裝:運行sudodockerrunhello-world。 3.基本用法:創建Nginx容器dockerrun--namemy-nginx-p8080:80-dnginx。 4.高級用法:創建自定義鏡像,使用Dockerfile構建並運行。 5.優化與最佳實踐:使用多階段構建和DockerCompose,遵循編寫Dockerfile的最佳實踐。

Docker監控的核心在於收集和分析容器的運行數據,主要包括CPU使用率、內存使用、網絡流量和磁盤I/O等指標。通過使用Prometheus、Grafana和cAdvisor等工具,可以實現對容器的全面監控和性能優化。

DockerSwarm可用於構建可擴展和高可用性的容器集群。 1)初始化Swarm集群使用dockerswarminit。 2)加入Swarm集群使用dockerswarmjoin--token:。 3)創建服務使用dockerservicecreate--namemy-nginx--replicas3nginx。 4)部署複雜服務使用dockerstackdeploy-cdocker-compose.ymlmyapp。

如何利用Docker和Kubernetes進行企業應用的容器編排?通過以下步驟實現:創建Docker鏡像並推送到DockerHub。在Kubernetes中創建Deployment和Service以部署應用。使用Ingress管理外部訪問。應用性能優化和最佳實踐,如多階段構建和資源限制。

Docker常見問題可以通過以下步驟診斷和解決:1.查看容器狀態和日誌,2.檢查網絡配置,3.確保卷掛載正確。通過這些方法,可以快速定位並修復Docker中的問題,提升系統穩定性和性能。

Docker是DevOps工程師必備的技能。 1.Docker是開源的容器化平台,通過將應用程序及其依賴打包到容器中,實現隔離和可移植性。 2.Docker的工作原理包括命名空間、控制組和聯合文件系統。 3.基本用法包括創建、運行和管理容器。 4.高級用法包括使用DockerCompose管理多容器應用。 5.常見錯誤有容器無法啟動、端口映射問題和數據持久化問題,調試技巧包括查看日誌、進入容器和查看詳細信息。 6.性能優化和最佳實踐包括鏡像優化、資源限制、網絡優化和使用Dockerfile的最佳實踐。

Docker安全強化的方法包括:1.使用--cap-drop參數限制Linux能力,2.創建只讀容器,3.設置SELinux標籤。這些策略通過減少漏洞暴露面和限制攻擊者能力來保護容器安全。

DockerVolumes可確保數據在容器重啟、刪除或遷移時依然安全。 1.創建Volume:dockervolumecreatemydata。 2.運行容器並掛載Volume:dockerrun-it-vmydata:/app/dataubuntubash。 3.高級用法包括數據共享和備份。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

Dreamweaver CS6
視覺化網頁開發工具

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

SublimeText3 Linux新版
SublimeText3 Linux最新版