Skip to content

Commit 199e0a5

Browse files
committed
Fix markdown for CI
1 parent f4edbfb commit 199e0a5

File tree

1 file changed

+9
-14
lines changed

1 file changed

+9
-14
lines changed

ros/content.md

Lines changed: 9 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ The Robot Operating System (ROS) is a set of software libraries and tools that h
1010

1111
## Creating a `Dockerfile` to install ROS packages
1212

13-
To create your own ROS docker images and install custom packages, here's a simple example of installing the C++ and Python client library demos using the official released Debian packages via apt-get.
13+
To create your own ROS docker images and install custom packages, here's a simple example of installing the C++ and Python client library demos using the official released Debian packages via apt-get.
1414

1515
```dockerfile
1616
FROM %%IMAGE%%:crystal
@@ -41,7 +41,7 @@ $ docker run -it --rm my/ros:app
4141

4242
## Creating a `Dockerfile` to build ROS packages
4343

44-
To create your own ROS docker images and build custom packages, here's a simple example of installing a package's build dependencies, compiling it from source, and installing the resulting build artifacts into a final multi-stage image layer.
44+
To create your own ROS docker images and build custom packages, here's a simple example of installing a package's build dependencies, compiling it from source, and installing the resulting build artifacts into a final multi-stage image layer.
4545

4646
```dockerfile
4747
FROM %%IMAGE%%:crystal-ros-base
@@ -92,11 +92,9 @@ CMD ["ros2", "launch", "demo_nodes_cpp", "talker_listener.launch.py"]
9292

9393
Note: `--from-paths` and `--packages-select` are set here as so to only install the dependencies and build for the `demo_nodes_cpp` package, one among many in the demo git repo that was cloned. To install the dependencies and build all the packages in the source workspace, merely change the scope by setting `--from-paths src/` and dropping the `--packages-select` arguments.
9494

95-
```
96-
REPOSITORY TAG IMAGE ID CREATED SIZE
97-
my/ros app-multi-stage 66c8112b2fb6 4 seconds ago 775MB
98-
my/ros app-single-stage 6b500239d0d6 2 minutes ago 797MB
99-
```
95+
REPOSITORY TAG IMAGE ID CREATED SIZE
96+
my/ros app-multi-stage 66c8112b2fb6 4 seconds ago 775MB
97+
my/ros app-single-stage 6b500239d0d6 2 minutes ago 797MB
10098

10199
For this particular package, using a multi-stage build didn't shrink the final image by much, but for more complex applications, segmenting build setup from the runtime can help keep image sizes down. Additionally, doing so can also prepare you for releasing your package to the community, helping to reconcile dependency discrepancies you may have otherwise forgotten to declare in your `package.xml` manifest.
102100

@@ -185,14 +183,13 @@ $ docker-compose rm
185183

186184
> Note: the auto-generated network, `ros_demos`, will persist until you explicitly remove it using `docker-compose down`.
187185
188-
189186
### Securing ROS
190187

191188
Lets build upon the example above by adding authenticated encryption to the message transport. This is done by leveraging [Secure DDS](https://www.omg.org/spec/DDS-SECURITY). We'll use the same ROS docker image to bootstrap the PKI, CAs, and Digitally Signed files.
192189

193190
> Create a script at `~/ros_demos/keystore/bootstrap_keystore.bash` to bootstrap a keystore and add entries for each node:
194191
195-
``` shell
192+
```shell
196193
#!/usr/bin/env bash
197194
# Bootstrap ROS keystore
198195
ros2 security create_keystore ./
@@ -202,8 +199,7 @@ ros2 security create_key ./ listener
202199

203200
> Create a enforcement file at `~/ros_demos/config.env` to configure ROS Security:
204201
205-
206-
``` shell
202+
```shell
207203
# Configure ROS Security
208204
ROS_SECURITY_NODE_DIRECTORY=/keystore
209205
ROS_SECURITY_STRATEGY=Enforce
@@ -213,7 +209,6 @@ ROS_DOMAIN_ID=0
213209

214210
> Use a temporary container to run the keystore bootstrapping script in the keystore directory:
215211
216-
217212
```console
218213
$ docker run -it --rm \
219214
--env-file ./config.env \
@@ -247,11 +242,11 @@ services:
247242
248243
> Now simply startup docker-compose as before:
249244
250-
``` command
245+
```console
251246
$ docker-compose up
252247
```
253248

254-
Note: So far this has only added authenticated encryption, i.e. only participants with public certificates signed by a trusted CA may join the domain. To enable access control within the secure domain, i.e. restrict which and how topics may be used by participants, more such details can be found [here](https://github.com/ros2/sros2/).
249+
Note: So far this has only added authenticated encryption, i.e. only participants with public certificates signed by a trusted CA may join the domain. To enable access control within the secure domain, i.e. restrict which and how topics may be used by participants, more such details can be found [here](https://github.com/ros2/sros2/).
255250

256251
# More Resources
257252

0 commit comments

Comments
 (0)