Learn Genesis

安装 创建Conda虚拟环境,并且安装Pytorch,Genesisi官方要求使用Python3.9+ 1 conda create -n l_gs python=3.10 -y 激活环境,从Pytorch官网获取下载指令,这里使用之前用过的cuda11.8版本 1 cnoda activate l_gs 1 pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118 然后使用pip安装Genesis 1 pip install genesis-world 安装可选功能 考虑后面的仿真任务,安装提供的运动规划功能。官方提供了简易的OMPL的API 下载whl文件,使用pip指令安装 1 pip install ompl-1.7.0-cp310-cp310-manylinux_2_28_x86_64.whl 因为conda环境使用python3.10,linux的x86架构,下载对应版本文件 至此,Genesis的安装完成 注意 发现Genesis不能像Pybullet一样保存场景,这对于需要手动提前设置场景的自动化实验很不友好😢,而且暂时没有发现鼠标交互功能,即用鼠标拖拽机器人,这种示教功能。

June 7, 2026 · 38 words · cqc272

conda环境程序打包到docker

内容介绍 尝试将Conda环境下的实验,打包为Docker镜像。 实验内容包含,Pybullet搭建仿真环境,PyTorch框架的神经网络,用于对目标点云的获取。 实验中需要用到GPU加速。 学习了Doker的一些基本指令,和Dockerfile内容的编写。 导出当前的conda环境依赖 1 2 conda activate env-name conda env export --no-builds > environment.yml 准备项目目录如下 1 2 3 4 5 6 7 8 9 your_project/ ├── model/ ├── param/ ├── point_cloud/ ← 点云保存目录(需挂载) ├── scripts/ │ └── pipe_sim.py ← 主程序入口 ├── utils/ ├── Dockerfile └── pipe_sim_env.yml ← Conda 环境配置 编写Dockerfile文件的内容 该 Dockerfile 构建了一个用于运行 PyTorch 项目的镜像,包含 GPU 支持、系统依赖、非 root 用户环境、Conda 虚拟环境等。 基础镜像 1 FROM pytorch/pytorch:2.5.1-cuda11.8-cudnn9-runtime 使用官方 PyTorch 镜像(已包含 Python、PyTorch、CUDA、cuDNN)。 版本为 PyTorch 2.5.1,CUDA 11.8。 版本为环境定制,从 pipe_sim_env.yml 得到。 最后上 Docker Hub 搜索可用版本。 设置为非交互模式安装软件 1 ENV DEBIAN_FRONTEND=noninteractive 避免安装时弹出交互界面,适合自动构建。 使用默认值进行交互。 安装系统依赖 1 2 3 4 5 6 7 RUN apt-get update && apt-get install -y --no-install-recommends \ libgl1-mesa-glx \ libxext6 \ libsm6 \ libxrender1 \ libglib2.0-0 \ && apt-get clean && rm -rf /var/lib/apt/lists/* 安装图形显示相关依赖,常用于 OpenCV、matplotlib。 清除缓存以减小镜像体积。 创建非 root 用户 1 RUN useradd -m -u 1000 appuser 创建用户名为 appuser 的普通用户,避免容器中直接以 root 身份运行。 参数 含义 useradd Linux 命令,用于创建新用户。 -m 创建用户的主目录(例如 /home/appuser)。 -u 1000 指定用户的 UID(用户标识号)为 1000。 appuser 要创建的用户名。 拷贝并构建 Conda 环境 1 2 3 COPY pipe_sim_env.yml /tmp/pipe_sim_env.yml RUN conda env create -f /tmp/pipe_sim_env.yml && \ conda clean -ya 将本地 Conda 环境配置文件复制到容器中。 使用 Conda 创建名为 pipe_sim 的环境。 清除镜像里的 Conda 缓存。 拷贝项目代码并设置权限 1 2 3 4 5 6 7 WORKDIR /workspace COPY scripts/ ./scripts/ COPY model/ ./model/ COPY param/ ./param/ COPY utils/ ./utils/ RUN mkdir -p /workspace/point_cloud && \ chmod -R 777 /workspace 设置工作目录为 /workspace。 拷贝本地代码目录到镜像中。 创建点云数据输出文件夹 point_cloud。 赋予所有人可读写权限(简化调试)。 授权给普通用户 1 RUN chown -R appuser:appuser /workspace 将 /workspace 所有权转移给 appuser,避免权限问题。 切换用户 1 USER appuser 后续命令以 appuser 用户身份执行。 设置默认激活 Conda 环境 1 RUN echo "source activate pipe_sim" > /home/appuser/.bashrc 每次进入容器时自动激活 pipe_sim 虚拟环境。 文件结构示意 1 2 3 4 5 6 /workspace ├── scripts/ # 主程序 ├── model/ # 模型权重或定义 ├── param/ # 参数配置 ├── utils/ # 工具函数 └── point_cloud/ # 输出点云数据 Dockerfile 构建流程图 flowchart TD A[FROM 镜像] --> B[安装系统依赖] B --> C[创建普通用户] C --> D[构建 Conda 环境] D --> E[拷贝项目文件] E --> F[设置权限] F --> G[切换用户] G --> H[设置默认环境激活]

April 9, 2025 · 312 words · cqc272