-
Notifications
You must be signed in to change notification settings - Fork 12
Open
Description
This is more an inconvenience than a bug.
The current Dockerfile doesn't run rosdep update, so when you run something, you get a warning like this:
$ roslaunch dave_demo_launch dave_dvl_gradient_demo_dsl.launch
…
the rosdep view is empty: call 'sudo rosdep init' and 'rosdep update'
That has to be manually run in the container right now.
One fix is to add a line like this in the Dockerfile:
RUN rosdep init && rosdep update
or this (actually the rosdep init errors saying a file in /etc already exists, maybe because I'm building from cached instead of scratch):
RUN rosdep update
But that's not optimal, because building the image will then warn that you aren't supposed to run it as the root user
Warning: running 'rosdep update' as root is not recommended.
You should run 'sudo rosdep fix-permissions' and invoke 'rosdep update' again without sudo.
We can't get around that in the Dockerfile, since the Dockerfile only has a root user, and the non-root user is established using rocker.
A few options:
- Do nothing, user will just have to run
rosdep init && rosdep updatemanually in the container - Add
RUN rosdep init && rosdep updateto the Dockerfile, which will run as root user. Ignore the warning. - Add a non-root user to the Dockerfile and the
RUNline above. This might conflict with the--userflag to rocker.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels