Issac ros failuar after every restart

admin@paa-ubuntu:/workspaces/isaac_ros-dev$ ros2 launch isaac_ros_examples isaac_ros_examples.launch.py launch_fragments:=realsense_stereo_rect,visual_slam interface_specs_file:=${ISAAC_ROS_WS}/isaac_ros_assets/isaac_ros_visual_slam/quickstart_interface_specs.json base_frame:=camera_link camera_optical_frames:=“[‘camera_infra1_optical_frame’, ‘camera_infra2_optical_frame’]”
Package ‘isaac_ros_examples’ not found: “package ‘isaac_ros_examples’ not found, searching: [‘/workspaces/isaac_ros-dev/install/nvblox_test’, ‘/workspaces/isaac_ros-dev/install/isaac_ros_nvblox’, ‘/workspaces/isaac_ros-dev/install/nvblox_examples_bringup’, ‘/workspaces/isaac_ros-dev/install/semantic_label_conversion’, ‘/workspaces/isaac_ros-dev/install/nvblox_test_data’, ‘/workspaces/isaac_ros-dev/install/nvblox_ros’, ‘/workspaces/isaac_ros-dev/install/nvblox_rviz_plugin’, ‘/workspaces/isaac_ros-dev/install/nvblox_ros_python_utils’, ‘/workspaces/isaac_ros-dev/install/nvblox_image_padding’, ‘/workspaces/isaac_ros-dev/install/nvblox_ros_common’, ‘/workspaces/isaac_ros-dev/install/nvblox_nav2’, ‘/workspaces/isaac_ros-dev/install/nvblox_msgs’, ‘/workspaces/isaac_ros-dev/install/isaac_ros_visual_slam’, ‘/opt/ros/humble’]”
every time i restart the docker and source my workspace i have to reinstall the examples and other things isnt there a more permanent fix for that ?

Hello @paakwabenajecteynyarko1,

Thanks for posting in the Isaac ROS forum!

Isaac ROS dev containers are designed with a bind mount at ~/workspaces/isaac_ros-dev/, so anything under that path on the host survives every container restart.
The container image itself, however, is ephemeral, packages you apt install/pip install inside the running container disappear when the container is recreated.
That’s why you’re having to reinstall every time.

Two ways to make it stick:

  1. Clone the repo into src/ and build from source.
    Because src/ and install/ are inside the bind mount, both the source and the built install survive. After the one-time build, you only need to source /workspaces/isaac_ros-dev/install/setup.bash each time you enter the container (which you can put in ~/.bashrc to automate).

  2. docker commit to bake the installed packages into a new image
    It works, but the image grows over time and the changes aren’t version-controlled, and it could be harder to maintain or reproduce on another machine.