mag*_*ged 6 environment-variables ros docker
这是我的 Dockerfile:
FROM ros:kinetic-ros-core-xenial
CMD ["bash"]
Run Code Online (Sandbox Code Playgroud)
如果我运行docker build -t ros . && docker run -it ros
,然后从容器内运行echo $PATH
,我会得到:
/opt/ros/kinetic/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Run Code Online (Sandbox Code Playgroud)
如果我exec
进入容器(docker exec -it festive_austin bash
)并运行echo $PATH
,我会得到:
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Run Code Online (Sandbox Code Playgroud)
为什么环境变量不同?如何在具有相同初始环境的容器上获得新的 bash 进程?
该ENTRYPOINT
命令仅在 上调用docker run
,而不在 上调用docker exec
。
我假设这个/ros_entrypoint.sh
脚本负责向PATH
. 如果是这样,那么你可以这样做docker exec
:
docker exec -it <CONTAINER_ID> /ros_entrypoint.sh bash
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4543 次 |
最近记录: |