Skip to content

Commit

Permalink
Merge branch 'main' of https://github.com/fan-ziqi/IsaacLab
Browse files Browse the repository at this point in the history
  • Loading branch information
fan-ziqi committed Aug 7, 2024
2 parents ab6ac7d + 6b24f90 commit 9935130
Show file tree
Hide file tree
Showing 27 changed files with 259 additions and 71 deletions.
8 changes: 4 additions & 4 deletions .github/workflows/postmerge-ci-buildspec.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ phases:
commands:
- echo "Building a docker image"
- docker login -u \$oauthtoken -p $NGC_TOKEN nvcr.io
- docker build -t $IMAGE_NAME:latest-1.1 --build-arg ISAACSIM_VERSION_ARG=4.1.0 --build-arg ISAACSIM_ROOT_PATH_ARG=/isaac-sim --build-arg ISAACLAB_PATH_ARG=/workspace/isaaclab --build-arg DOCKER_USER_HOME_ARG=/root -f docker/Dockerfile.base .
- docker build -t $IMAGE_NAME:latest-1.0 --build-arg ISAACSIM_VERSION_ARG=4.1.0 --build-arg ISAACSIM_ROOT_PATH_ARG=/isaac-sim --build-arg ISAACLAB_PATH_ARG=/workspace/isaaclab --build-arg DOCKER_USER_HOME_ARG=/root -f docker/Dockerfile.base .
- echo "Pushing the docker image"
- docker push $IMAGE_NAME:latest-1.1
- docker tag $IMAGE_NAME:latest-1.1 $IMAGE_NAME:latest-1.1-b$CODEBUILD_BUILD_NUMBER
- docker push $IMAGE_NAME:latest-1.1-b$CODEBUILD_BUILD_NUMBER
- docker push $IMAGE_NAME:latest-1.0
- docker tag $IMAGE_NAME:latest-1.0 $IMAGE_NAME:latest-1.0-b$CODEBUILD_BUILD_NUMBER
- docker push $IMAGE_NAME:latest-1.0-b$CODEBUILD_BUILD_NUMBER
2 changes: 1 addition & 1 deletion docker/Dockerfile.base
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ ENV ISAACSIM_VERSION=${ISAACSIM_VERSION_ARG}
SHELL ["/bin/bash", "-c"]

# Adds labels to the Dockerfile
LABEL version="1.1"
LABEL version="1.0"
LABEL description="Dockerfile for building and running the Isaac Lab framework inside Isaac Sim container image."

# Arguments
Expand Down
100 changes: 100 additions & 0 deletions docker/Dockerfile.pip
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
# Copyright (c) 2022-2024, The Isaac Lab Project Developers.
# All rights reserved.
#
# SPDX-License-Identifier: BSD-3-Clause

# This Dockerfile is used to build a Docker image for the Isaac Lab framework.
#
# It uses the pip package manager to install Isaac Sim and the Isaac Lab framework.
#
# To build the Docker image and run the Docker container, follow the steps below:
#
# 1. Build the Docker image:
# docker build -t isaac-lab-pip:latest -f docker/Dockerfile.pip .
# 2. Run the Docker container:
# docker run -it --gpus all --rm --network=host --name isaac-lab -v $(pwd):/root/isaaclab isaac-lab-pip:latest

# Base image: Ubuntu 22.04
FROM ubuntu:22.04 AS base

# Set default RUN shell to bash
SHELL ["/bin/bash", "-c"]

# Adds labels to the Dockerfile
LABEL version="1.0"
LABEL description="Dockerfile for building and running the Isaac Lab framework in Ubuntu 22.04 container image."

# Arguments
# Path to the Isaac Lab directory
ENV ISAACLAB_PATH=/root/isaaclab
# Home dir of docker user, typically '/root'
ENV DOCKER_USER_HOME=/root

# Set environment variables
ENV LANG=C.UTF-8
ENV DEBIAN_FRONTEND=noninteractive

USER root

# Install dependencies and remove cache
RUN --mount=type=cache,target=/var/cache/apt \
apt-get update && apt-get install -y --no-install-recommends \
build-essential \
cmake \
git \
libglib2.0-0 \
ncurses-term && \
apt -y autoremove && apt clean autoclean && \
rm -rf /var/lib/apt/lists/*

# for singularity usage, have to create the directories that will binded
RUN mkdir -p ${DOCKER_USER_HOME}/.cache/ov && \
mkdir -p ${DOCKER_USER_HOME}/.cache/pip && \
mkdir -p ${DOCKER_USER_HOME}/.cache/nvidia/GLCache && \
mkdir -p ${DOCKER_USER_HOME}/.nv/ComputeCache && \
mkdir -p ${DOCKER_USER_HOME}/.nvidia-omniverse/logs && \
mkdir -p ${DOCKER_USER_HOME}/.local/share/ov/data && \
mkdir -p ${DOCKER_USER_HOME}/Documents

# for singularity usage, create NVIDIA binary placeholders
RUN touch /bin/nvidia-smi && \
touch /bin/nvidia-debugdump && \
touch /bin/nvidia-persistenced && \
touch /bin/nvidia-cuda-mps-control && \
touch /bin/nvidia-cuda-mps-server && \
touch /etc/localtime && \
mkdir -p /var/run/nvidia-persistenced && \
touch /var/run/nvidia-persistenced/socket

# Install python3 and pip
RUN apt-get update && apt-get install -y --no-install-recommends \
python3 \
python3-pip && \
apt -y autoremove && apt clean autoclean && \
rm -rf /var/lib/apt/lists/*
# Maintain python3 as the default python version
RUN update-alternatives --install /usr/bin/python python /usr/bin/python3 1
RUN update-alternatives --install /usr/bin/pip pip /usr/bin/pip3 1

# Install python packages
RUN pip3 install --no-cache-dir --upgrade pip && \
pip install torch==2.2.2 --index-url https://download.pytorch.org/whl/cu118

RUN pip install isaacsim-rl isaacsim-replicator isaacsim-extscache-physics isaacsim-extscache-kit-sdk isaacsim-extscache-kit isaacsim-app --extra-index-url https://pypi.nvidia.com

# Mount the Isaac Lab directory (files to exclude are defined in .dockerignore)
COPY ../ ${ISAACLAB_PATH}

# installing Isaac Lab dependencies
# use pip caching to avoid reinstalling large packages
RUN --mount=type=cache,target=${DOCKER_USER_HOME}/.cache/pip \
${ISAACLAB_PATH}/isaaclab.sh --install

# aliasing isaaclab.sh and python for convenience
RUN echo "export ISAACLAB_PATH=${ISAACLAB_PATH}" >> ${HOME}/.bashrc && \
echo "alias isaaclab=${ISAACLAB_PATH}/isaaclab.sh" >> ${HOME}/.bashrc && \
echo "export TZ=$(date +%Z)" >> ${HOME}/.bashrc

# make working directory as the Isaac Lab directory
# this is the default directory when the container is run
WORKDIR ${ISAACLAB_PATH}
2 changes: 1 addition & 1 deletion docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -226,7 +226,7 @@
{
"name": "Isaac Sim",
"url": "https://developer.nvidia.com/isaac-sim",
"icon": "https://img.shields.io/badge/IsaacSim-4.1-silver.svg",
"icon": "https://img.shields.io/badge/IsaacSim-4.0-silver.svg",
"type": "url",
},
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Isaac Lab 1.0.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-07-27 03:10+0000\n"
"POT-Creation-Date: 2024-07-29 16:18+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Ziqi Fan <[email protected]>\n"
"Language: zh_CN\n"
Expand Down Expand Up @@ -2064,3 +2064,9 @@ msgstr ""
msgid "If the prim at the specified path is not valid."
msgstr ""

#~ msgid ""
#~ ":py:obj:`__new__ "
#~ "<omni.isaac.lab.sim.SimulationContext.RenderMode.__new__>`\\ "
#~ "\\(value\\)"
#~ msgstr ""

10 changes: 5 additions & 5 deletions docs/locale/zh_CN/LC_MESSAGES/source/deployment/cluster.po
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ msgid ""
"privileges to run containers and can be used to run user-defined containers."
msgstr ""
"Cluster是加快训练和学习算法评估的好方法。尽管 Isaac Lab Docker 镜像可用于在Cluster上运行作业,但许多Cluster只支持"
" singularity 镜像。这是因为 singularity 专为共享多用户系统和高性能计算(HPC)环境的易用性而设计。它不需要 root "
" singularity 镜像。这是因为 `singularity`_ 专为共享多用户系统和高性能计算(HPC)环境的易用性而设计。它不需要 root "
"权限来运行容器,并且可以用于运行用户定义的容器。"

#: ../../source/deployment/cluster.rst:14
Expand Down Expand Up @@ -74,7 +74,7 @@ msgid ""
"summarize the steps here for a local installation:"
msgstr ""
"为了将 Docker 镜像导出为singularity镜像,需要使用 `apptainer`_ 。关于 ``apptainer`` "
"的安装过程的详细概述可以在其 ` 文档`_ 中找到。为方便起见,我们在这里总结了本地安装的步骤:"
"的安装过程的详细概述可以在其 `文档`_ 中找到。为方便起见,我们在这里总结了本地安装的步骤:"

#: ../../source/deployment/cluster.rst:43
msgid ""
Expand Down Expand Up @@ -111,7 +111,7 @@ msgstr "``Docker`` :最新版本( ``25.x`` )目前无法使用,因为它
msgid ""
"We are waiting for an update from the apptainer team. To track this issue, "
"please check the `forum post`_."
msgstr "我们正在等待 apptainer 团队的更新。要跟踪此问题,请查看 ` 论坛帖子`_ 。"
msgstr "我们正在等待 apptainer 团队的更新。要跟踪此问题,请查看 `论坛帖子`_ 。"

#: ../../source/deployment/cluster.rst:59
msgid "Configuring the cluster parameters"
Expand Down Expand Up @@ -253,7 +253,7 @@ msgid ""
"more information, please check the `SLURM documentation`_."
msgstr ""
"作业参数在 ``docker/cluster/submit_job_slurm.sh`` 中定义。典型的 SLURM 操作需要指定 CPU 和 GPU "
"的数量,内存和时间限制。有关更多信息,请查看 'SLURM 文档'。"
"的数量,内存和时间限制。有关更多信息,请查看 `SLURM 文档`_ 。"

#: ../../source/deployment/cluster.rst:127
#: ../../source/deployment/cluster.rst:155
Expand Down Expand Up @@ -291,7 +291,7 @@ msgid ""
"information, please check the `PBS Official Site`_."
msgstr ""
"作业参数在 ``docker/cluster/submit_job_pbs.sh`` 中定义。典型的 PBS 操作需要指定 CPU 和 GPU "
"的数量以及时间限制。有关更多信息,请查看 'PBS 官方网站'。"
"的数量以及时间限制。有关更多信息,请查看 `PBS 官方网站`_ 。"

#: ../../source/deployment/cluster.rst:165
msgid "Submitting a job"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ msgid ""
"it to the module. You can also create a new module for the wrapper if you "
"prefer."
msgstr ""
"为该库创建包装器。您可以查看 ``omni.isaac.lab_tasks.utils.wrappers`` "
"为该库创建包装器。您可以查看 :mod:`omni.isaac.lab_tasks.utils.wrappers` "
"模块,查看不同库的包装器示例。您可以为您的库创建一个新的包装器,并将其添加到该模块。如果愿意,还可以为包装器创建一个新的模块。"

#: ../../source/how-to/add_own_library.rst:79
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ msgid ""
"issues. For more details on instanceable assets, please check the Isaac Sim "
"`documentation`_."
msgstr ""
"用于大规模仿真中使用资产的重要注意事项是确保它们是 ` 实例化`_ "
"用于大规模仿真中使用资产的重要注意事项是确保它们是 `实例化`_ "
"格式。这允许资产有效地加载到内存中,并在场景中多次使用。否则,资产将多次加载到内存中,可能导致性能问题。有关实例化资产的更多详细信息,请查看 Isaac"
" Sim `文档`_ 。"

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@ msgid ""
" `tutorial on layering in Omniverse`_ for more details."
msgstr ""
"在新阶段上,将 ``Stage.usd`` 添加为子层,然后将 ``TimeSample_tk001.usd`` "
"添加为子层。您可以通过将文件从文件资源管理器拖放到舞台中来执行此操作。有关更多详细信息,请查阅关于Omniverse图层的教程。"
"添加为子层。您可以通过将文件从文件资源管理器拖放到舞台中来执行此操作。有关更多详细信息,请查阅 `Omniverse中的分层教程`_ 。"

#: ../../source/how-to/record_animation.rst:73
msgid "You can then play the animation by pressing the play button."
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -110,8 +110,9 @@ msgid ""
":class:`~sim.spawners.from_files.UrdfFileCfg`. For more details, please "
"check the API documentation."
msgstr ""
"如要从URDF文件中导入关节而不是从USD文件中导入,请使用 :class:`~sim.spawners.from_files.UrdfFileCfg`"
" 替换。更多详情,请查看API文档。"
"如要从URDF文件中导入关节而不是从USD文件中导入,你可以用 "
":class:`~sim.spawners.from_files.UrdfFileCfg` 替换 "
":class:`~sim.spawners.from_files.UsdFileCfg` 。更多详情,请查看API文档。"

#: ../../source/how-to/write_articulation_cfg.rst:58
msgid "Defining the initial state"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ msgstr ""
msgid ""
"The following changes are with respect to Isaac Lab 1.0 release. Please "
"refer to the `release notes`_ for any changes in the future releases."
msgstr "以下更改针对于 Isaac Lab 1.0 发布版本。请参考`release notes`_以获取未来发布版本的任何更改信息。"
msgstr "以下更改针对于 Isaac Lab 1.0 发布版本。请参考 `release notes`_ 以获取未来发布版本的任何更改信息。"

#: ../../source/migration/migrating_from_omniisaacgymenvs.rst:21
msgid "Task Config Setup"
Expand Down Expand Up @@ -93,7 +93,10 @@ msgid ""
"``contact_offset``, ``rest_offset``, ``bounce_threshold_velocity``, "
"``max_depenetration_velocity`` can all be specified on a per-actor basis in "
"the config class for each individual articulation and rigid body."
msgstr "关节配置"
msgstr ""
"关节和刚体的仿真参数,例如 ``num_position_iterations`` 、 ``num_velocity_iterations`` 、 "
"``contact_offset`` 、 ``rest_offset`` 、 ``bounce_threshold_velocity`` 和 "
"``max_depenetration_velocity`` ,可以在每个单独的关节和刚体的配置类中以每个角色为基础进行指定。"

#: ../../source/migration/migrating_from_omniisaacgymenvs.rst:67
msgid ""
Expand All @@ -105,10 +108,9 @@ msgid ""
":class:`~omni.isaac.lab.sim.PhysxCfg` class provides access for setting the "
"GPU buffer dimensions."
msgstr ""
"同样地,每个个体关节和刚体的模拟参数,比如 ``num_position_iterations`` , "
"``num_velocity_iterations`` , ``contact_offset`` , ``rest_offset`` , "
"``bounce_threshold_velocity`` , ``max_depenetration_velocity`` "
",都可以在每个单独个体的配置类中进行指定。"
"在使用 GPU 运行仿真时,PhysX "
"中的缓冲区需要预先分配,用于计算和存储诸如接触、碰撞和聚合对等信息。这些缓冲区可能需要根据环境复杂性、预期接触和碰撞数量以及环境中的演员数量进行调整。:class:`~omni.isaac.lab.sim.PhysxCfg`"
" 类提供了设置 GPU 缓冲区尺寸的访问功能。"

#: ../../source/migration/migrating_from_omniisaacgymenvs.rst:120
msgid ""
Expand All @@ -117,8 +119,9 @@ msgid ""
"command line argument ``--enable_cameras`` that can be passed directly to "
"the training script."
msgstr ""
"更进一步,在GPU上运行模拟时,PhysX中的缓冲区需要预先分配,用于计算和存储信息,比如接触、碰撞和聚合对。这些缓冲区可能需要根据环境的复杂性、预期的接触和碰撞数量以及环境中的角色数量进行调整。"
" :class:`~omni.isaac.lab.sim.PhysxCfg` 类提供了设置GPU缓冲区维度的访问。"
"以下参数,如 ``add_ground_plane`` 和 "
"``add_distant_light``,现在在创建场景时已成为任务逻辑的一部分。``enable_cameras`` 现在作为命令行参数 "
"``--enable_cameras`` 存在,可以直接传递给训练脚本。"

#: ../../source/migration/migrating_from_omniisaacgymenvs.rst:125
msgid "Scene Config"
Expand Down
10 changes: 5 additions & 5 deletions docs/locale/zh_CN/LC_MESSAGES/source/refs/migration.po
Original file line number Diff line number Diff line change
Expand Up @@ -55,9 +55,9 @@ msgid ""
"module name has also been changed from :mod:`omni.physxflatcache` to "
":mod:`omni.physxfabric`."
msgstr ""
"PhysX Flatcache已更名为PhysX "
"Fabric。这个新名称更能描述功能,并且与Omniverse命名约定中使用的“Fabric”一致。因此,Python模块名称也已从 "
":mod:`omni.physxflatcache` 更改为: :mod:`omni.physxfabric` 。"
"PhysX Flatcache已更名为PhysX Fabric。这个新名称更能描述功能,并且与Omniverse命名约定中使用的 `Fabric`_ "
"一致。因此,Python模块名称也已从 :mod:`omni.physxflatcache` 更改为: :mod:`omni.physxfabric` "
"。"

#: ../../source/refs/migration.rst:22
msgid "Following this, on the Isaac Sim side, various renaming have occurred:"
Expand Down Expand Up @@ -132,8 +132,8 @@ msgid ""
"new API the attributes are prefixed with ``inputs:``. For example, the "
"``intensity`` attribute is now available as ``inputs:intensity``."
msgstr ""
"正如在 ``USD 22.11`` 的发布说明中所强调的, ``UsdLux.Light`` API已被弃用,新的 ``UsdLuxLightAPI``"
" API取而代之。在新的API中,属性前缀为 ``inputs:`` 。例如, ``intensity`` 属性现在可以用 "
"正如在 `USD 22.11`_ 的发布说明中所强调的, ``UsdLux.Light`` API已被弃用,新的 ``UsdLuxLightAPI`` "
"API取而代之。在新的API中,属性前缀为 ``inputs:`` 。例如, ``intensity`` 属性现在可以用 "
"``inputs:intensity`` 来访问。"

#: ../../source/refs/migration.rst:53
Expand Down
4 changes: 2 additions & 2 deletions docs/locale/zh_CN/LC_MESSAGES/source/setup/developer.po
Original file line number Diff line number Diff line change
Expand Up @@ -231,8 +231,8 @@ msgid ""
" in the ``config/extension.toml`` file is loaded and scripts that contains "
"children of the :class:`omni.ext.IExt` class are executed."
msgstr ""
"更具体地说,启用扩展时, ``config/extension.toml`` "
"文件中指定的Python模块被加载,并且包含:omni.ext.IExt类的子级的脚本会被执行。"
"更具体地说,启用扩展时, ``config/extension.toml`` 文件中指定的Python模块被加载,并且包含 "
":class:`omni.ext.IExt` 类的子级的脚本会被执行。"

#: ../../source/setup/developer.rst:172
msgid ""
Expand Down
2 changes: 1 addition & 1 deletion docs/locale/zh_CN/LC_MESSAGES/source/setup/faq.po
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,7 @@ msgid ""
"users to follow our `migration guides`_ to transition over to Isaac Lab."
msgstr ""
"Isaac Lab取代了以前的 `IsaacGymEnvs`_ 、 `OmniIsaacGymEnvs`_ 和 `Orbit`_ 框架,将成为Isaac"
" Sim的单一机器人学习框架。之前发布的框架已被弃用,我们鼓励用户按照我们的 ` 迁移指南`_ 完成迁移工作。"
" Sim的单一机器人学习框架。之前发布的框架已被弃用,我们鼓励用户按照我们的 `迁移指南`_ 完成迁移工作。"

#: ../../source/setup/faq.rst:58
msgid "Why should I use Isaac Lab?"
Expand Down
Loading

0 comments on commit 9935130

Please sign in to comment.