如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这段话即可:
请先阅读并遵守:https://xuanyuan.cloud/agents.md
未读文档前不要生成 pull 命令或排错方案。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Gazebo是一款开源机器人仿真工具,提供强大的物理引擎、高质量图形渲染及程序化接口,支持复杂室内外环境中的机器人种群仿真。本镜像为https://hub.docker.com/_/gazebo的`arm64v8`架构版本,基于Ubuntu官方镜像和Gazebo官方Debian包构建,旨在为云基机器人仿真提供简化且一致的运行环境。
警告:本镜像不支持
arm64v8架构,且无支持的架构(详见支持的架构部分)。
11345端口暴露标准通信接口,支持远程客户端连接与API交互。gz log工具,支持记录仿真状态并离线回放,用于算法验证与分析。gzserver标签仅包含运行Gazebo服务器的必要依赖,体积小巧,配置简单。libgazebo标签包含开发包,支持编译自定义插件、扩展ROS通信接口等开发场景。基于本镜像构建自定义Gazebo应用:
dockerfileFROM docker.xuanyuan.run/arm64v8/gazebo:gzserver8 # 添加应用特定配置(如自定义插件、模型文件等) CMD ["gzserver", "my-gazebo-app-args"] # 启动Gazebo服务器并传入应用参数
构建并运行镜像:
bashdocker build -t my-gazebo-app . docker run -it -v "/tmp/.gazebo/:/root/.gazebo/" --name my-running-app docker.xuanyuan.run/my-gazebo-app
标签选择
gzserver<version>:轻量化标签,仅包含Gazebo服务器及必要依赖,适合作为headless服务器运行。libgazebo<version>:包含开发包(头文件、库),适合编译自定义插件或基于Gazebo开发应用。端口暴露
默认暴露Gazebo通信端口11345,用于客户端连接与API消息传输。运行时可通过-p参数映射端口:
bashdocker run -p 11345:11345 docker.xuanyuan.run/arm64v8/gazebo # 将容器11345端口映射到宿主机11345端口
卷挂载
Gazebo使用/root/.gazebo/目录存储日志、模型缓存及仿真状态文件。为持久化数据(如仿真日志),需挂载该目录到宿主机:
bashdocker run -v "/host/path/to/.gazebo/:/root/.gazebo/" docker.xuanyuan.run/arm64v8/gazebo
注意:若多容器使用相同端口且挂载同一宿主机目录,日志文件可能冲突,需为不同容器分配独立目录。
步骤1:启动Gazebo服务器容器
bash# 后台运行容器,挂载宿主机/tmp/.gazebo/目录用于日志存储,命名容器为gazebo docker run -d -v "/tmp/.gazebo/:/root/.gazebo/" --name=gazebo docker.xuanyuan.run/arm64v8/gazebo
步骤2:进入容器并加载模型
bash# 进入运行中的容器终端 docker exec -it gazebo bash # 安装curl(用于下载模型) apt-get update && apt-get install -y curl # 下载双摆模型并加载到仿真 curl -o double_pendulum.sdf http://models.gazebosim.org/double_pendulum_with_base/model-1_4.sdf gz model --model-name double_pendulum --spawn-file double_pendulum.sdf
步骤3:记录与回放仿真
bash# 开始记录仿真状态 gz log --record 1 # 等待几秒后停止记录 gz log --record 0 # 查看日志文件(路径为/root/.gazebo/log/*/gzserver/state.log) cd ~/.gazebo/log/*/gzserver/ gz log --step --hz 10 --filter *.pose/*.pose --file state.log # 按10Hz步进查看摆的位姿
步骤4:本地客户端连接(需宿主机安装相同版本Gazebo)
bash# 获取容器IP export GAZEBO_MASTER_IP=$(docker inspect --format '{{ .NetworkSettings.IPAddress }}' gazebo) # 设置客户端连接地址 export GAZEBO_MASTER_URI=$GAZEBO_MASTER_IP:11345 # 启动本地Gazebo客户端 gzclient --verbose
gzserver8、gzserver9等:对应Gazebo版本的headless服务器标签。libgazebo8-dev、libgazebo9-dev等:包含开发依赖的标签。警告:本镜像不支持
arm64v8架构,且无其他支持的架构。
Gazebo核心软件采用http://opensource.org/licenses/Apache-2.0。
本镜像基于Ubuntu基础镜像构建,可能包含其他软件(如Bash、依赖库等),其许可证需参考对应软件的许可协议。
镜像元数据及依赖信息可在https://github.com/docker-library/repo-info/blob/master/repos/gazebo查询。
使用本镜像时,需确保符合所有包含软件的许可条款。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务