NVIDIA SDK Manager是NVIDIA用于连接边缘设备(模块)的UI工具,执行下载启动程序、安装驱动、配置参数等工作。可以在Ubuntu和CentOS中运行,也可以在Docker中运行,对于目前不支持的宿主机系统,Docker中运行也是目前唯一的方法。
- 支持操作系统版本:
- Ubuntu 16.04, 18.04 and 20.04 on x86_64 system
- CentOS 7.6, 8.0 and 8.2 on x86_64 system
- 相关参考:
- 本文来源,https://docs.nvidia.com/sdk-manager/docker-containers/index.html
- nvidia-sdk-manager,https://developer.nvidia.com/nvidia-sdk-manager
- Jetson开发者论坛,https://developer.nvidia.com/blog
- Jetson下载中心,https://developer.nvidia.com/zh-cn/embedded/downloads#?search=Jetson%20AGX%20Xavier%20Developer%20Kit%20User%20Guide
- Jetson Mate,https://wiki.seeedstudio.com/Jetson-Mate/#installing-kubernetes
一、下载并安装
-
下载和安装Docker engine: Install Docker Engine @ Docker Documentation.
对于Linux 用户,强烈建议managing Docker as a non-root user, 参考 Post-installation steps for Linux @ Docker Documentation.
-
到下载页面: https://developer.nvidia.com/nvidia-sdk-manager-docker-image.
-
下载文件到宿主机。
-
打开控制台,载入 Docker image:
docker load -i ./sdkmanager_[version].[build#]_docker.tar.gz
二、 使用SDK Manager Docker Image
2.1. Guidelines
-
The image is built for using SDK Manager CLI mode only. See Install with the Command Line for more information.
-
Flashing the target device requires full access to the USB port on the host machine.
Note:
Creating a DRIVE image for DRIVE Software 10.0 is not currently supported.
2.2. Base Usage
The Docker image is designed to be executed directly from the host, without the need to open the terminal inside the docker itself. The sdkmanager executable is the entrypoint.
SDK Manager CLI arguments should be used directly when running a new container:
-
SDK Manager CLI
sdkmanager –-ver
-
SDK Manager CLI with Docker
docker run -it --rm sdkmanager –-ver
See Install with the Command Line for more information.
三、 其它考虑
-
By default, the initial container has a clean profile and local database. This needs to be taken into consideration as far as how to use the image, and when to save the changes (commit) into a new image. This will depend on the usage plans for the container, if there is a plan to re-use it after installation or start each time from a clean phase. Alter your plans according to whether you intend to have a different container for each SDK release or a unique one.
-
Flashing requires privileged access and mapping USB ports into the container:
--privileged -v /dev/bus/usb:/dev/bus/usb/
-
Depending on your local network's security settings, you may need to set access to your local network with --network host. This is primarily needed if you wish to interact with Jetson devices via L4T USB Device mode.
- The local user inside the Docker is nvidia with nvidia as the password. The home folder is /home/nvidia.
-
Examples for setting the container for flashing and re-use are as follows:
-
Initial install and flash; this example uses JetPack 4.4.1 and the Jetson Nano NX Devkit.
docker run -it --privileged -v /dev/bus/usb:/dev/bus/usb/ --name JetPack_NX_Devkit sdkmanager --cli install --logintype devzone --product Jetson --target P3668-0000 --targetos Linux --version 4.4.1 --select 'Jetson OS' --deselect 'Jetson SDK Components' --flash all --license accept --staylogin true --datacollection enable --exitonfinish
-
After install and flash, commit the container as a new image.
docker commit JetPack_NX_Devkit jetpack_nx_devkit:4.4.1_flash
docker container rm JetPack_NX_Devkit
-
Next, flash can be executed from the created image directly, without additional arguments. The container can then be removed after flash is complete.
docker run -it --rm --privileged -v /dev/bus/usb:/dev/bus/usb/ jetpack_nx_devkit:4.4.1_flash
-
4、已知问题
WSL / Docker in Windows 10 Desktop Host
-
Currently, flashing the target device is not supported, due to lack of USB porting support.
-
When installing JetPack SDK using the SDK Manager Docker image, you should first install qemu-user-static on your host machine. Without qemu-user-static package, you will get the following error during installation from the File System and OS component:
'dpkg': Exec format error
更多内容:
Previous Topics Next Topics