首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Dockerfile中使用"colcon build“?

如何在Dockerfile中使用"colcon build“?
EN

Stack Overflow用户
提问于 2022-06-23 09:22:26
回答 1查看 115关注 0票数 0

我试图创建一个基于ubuntu:20.04的对接映像,在这里我想安装ROS2、点火平台和带有Dockerfile的ROS2 2桥。

安装ROS2和外接没有任何问题,但在桥梁安装期间,我需要使用colcon。下面是Dockerfile中的这一部分:

代码语言:javascript
复制
## install ROS2 ignition gazebo bridge
RUN export IGNITION_VERSION=edifice
RUN mkdir -p ros_ign_bridge_ws/src
RUN git clone https://github.com/osrf/ros_ign.git -b foxy ros_ign_bridge_ws/src
WORKDIR ros_ign_bridge_ws
RUN rosdep install -r --from-paths src -i -y --rosdistro foxy
RUN colcon build
RUN source ros_ign_bridge_ws/install/setup.bash
RUN echo "source ros_ign_bridge_ws/install/setup.bash" >> ~/.bashrc

colcon build步骤中,当我使用

docker build -f Dockerfiles/companion_base.Dockerfile -t companion_base .

,但是当我运行创建到该步骤的映像时

docker run -it c125a17c2f68 /bin/bash

然后在容器内执行colcon build,它可以正常工作,没有任何问题。

那么,在容器中运行RUN colcon build和运行colcon build有什么区别呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-06-28 09:27:23

问题是,当您在前面的docker构建步骤中获取某个内容时,它在下一个步骤中不可用。因此,我需要做的是在同一步进行采购和建设:

代码语言:javascript
复制
RUN /bin/bash -c "source /opt/ros/foxy/setup.bash; colcon build"
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72727733

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档