目的:在ubuntu22.04中使用docker拉取ubuntu20.04镜像,后续安装ros1以及相机和激光驱动
1.pull 镜像
/etc/docker文件中修改daemon.json
{
"runtimes": {
"nvidia": {
"path": "nvidia-container-runtime",
"runtimeArgs": []
}
},
"default-runtime": "nvidia",
"registry-mirrors": ["xxxxxxxxxx"] //阿里云注册的,注册后有详细提示
}
docker pull ubuntu:20.04
2.配置容器
docker run --network host -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix --gpus all -it -v /home/docker:/home/docker ubuntu:20.04
--network host:使用主机的网络配置。
-e DISPLAY=$DISPLAY:传递显示环境变量。
-v /tmp/.X11-unix:/tmp/.X11-unix:挂载 X11 套接字,允许图形化界面显示。
--gpus all:使用主机上的所有 GPU。
-it:交互模式运行容器。
-v /home/docker:/home/docker:挂载主机目录到容器内指定目录。
ubuntu:20.04:指定使用的 Docker 镜像是 Ubuntu 20.04。
3.测试图形化界面
apt update
apt install -y x11-apps
xclock
这一步遇到问题需要在本机输入 sudo xhost +
4.docker ps -a
5.docker start <id>
6.docker exec -it <id> /bin/bash
只是记录使用docker的一些命令,防止以后忘记。