You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: navigation2/README.md
+28-6
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,9 @@
1
1
# Navigation2 Docker Image
2
2
3
3
The Navigation2 Docker image uses the Space ROS docker image (*osrf/space-ros:latest*) as its base image.
4
-
The Navigation2 Dockerfile installs all of the prerequisite system dependencies to build Navigation2
4
+
The Navigation2 Dockerfile installs all of the prerequisite system dependencies to build Navigation2.
5
+
All the required nav2 packages are cloned and built from sources using the `navigation2.repos` file. The `nav2_rviz_plugins` and `nav2_bringup` packages together with their dependencies (Rviz, Gazebo, etc) are excluded to reduce package dependencies. The image also contains a custom `space_nav2_bringup` package that can be used as a starting point for creating mission-specific nav2 launch files.
6
+
5
7
## Building the Navigation2 Image
6
8
7
9
To build the docker image, run:
@@ -33,8 +35,7 @@ The output will look something like this:
33
35
```
34
36
REPOSITORY TAG IMAGE ID CREATED SIZE
35
37
osrf/space_nav2 latest 6edb2edc9643 10 hours ago 15.5GB
36
-
openrobotics/spaceros latest 629b13cf7b74 12 hours ago 7.8GB
37
-
nvidia/cudagl 11.4.1-devel-ubuntu20.04 336416dfcbba 1 week ago 5.35GB
38
+
osrf/space-ros latest 629b13cf7b74 12 hours ago 7.8GB
38
39
```
39
40
40
41
The new image is named **osrf/space_nav2:latest**.
@@ -45,13 +46,34 @@ There is a run.sh script provided for convenience that will run the spaceros ima
45
46
./run.sh
46
47
```
47
48
48
-
Upon startup, the container automatically runs the entrypoint.sh script, which sources the MoveIt2 and Space ROS environment files.
49
+
Upon startup, the container automatically runs the entrypoint.sh script, which sources the Nav2 and Space ROS environment files.
49
50
You'll now be running inside the container and should see a prompt similar to this:
To run the latest demo, see the README in the nav2_demos folder
58
+
To run the latest demo, see the README in the [nav2_demo](../nav2_demo/README.md) folder.
59
+
60
+
## Updating navigation2 packages
61
+
62
+
The `navigation2.repos` file available in this repository provides a list of repos that are required to build the nav2 stack. ROS packages already included in the SpaceROS base image are omited from this file.
63
+
64
+
To update navigation2 packages used to build the space nav2 image, run the `docker_update_nav2_repos.sh` script:
65
+
66
+
```
67
+
./docker_update_nav2_repos.sh
68
+
```
69
+
70
+
This will update the `navigation2.repos` file with the newest versions of nav2 packages. The script resolves missing packages in base spaceros image and creates a list with their latest versions. The `navigation2.repos` file is then copied during build to the docker image with space nav2, and packages specified in the file are cloned and installed.
71
+
72
+
By default, this update nav2 repositories using the latest released version of the Space ROS base image (typically `osrf/space-ros:latest`).
73
+
If building locally, the underlying base image can be set in the through the environment with:
To generate a list of required packages for any other ROS workspace (e.g. your custom workspace built on top of SpaceROS that already has some nav2 dependencies installed), consider using the `update_nav2_repos.sh` as your starting point. You may also need to clone `generate-repos.sh` script from the main spaceros repository.
0 commit comments