爬坑--docker构建容器ssh连接容器环境变量会发生变化

问题

通过 Dockerfile 语句在镜像中安装了 openssh, 但是在创建容器之后, 通过 docker exec -it 容器 bash 和通过远程 ssh, 会发现两边终端的 PATH 不一致, ssh 连接明显缺少一些东西.

解决方案

在 Dockerfile 最后添加:

docker 复制代码
RUN echo "export PATH=${PATH}" >> /root/.bashrc

原因是因为在 Dockerfile 中部分环境变量被使用的 ENV 语句来指定, 这部分变量不会被带入到诸如 ~/.bashrc 或者 /etc/profile

参考

相关推荐
ZZZKKKRTSAE1 小时前
rhel9快速上手Docker
运维·docker·容器
筱顾大牛1 小时前
Docker安装教程(加汉化!超详细!!!)
运维·docker·容器
没头脑的男大1 小时前
关于tailscale和ssh那些事儿
运维·服务器·ssh
九成宫2 小时前
安装和配置Docker教程(装在其他盘)
运维·docker·容器
janthinasnail2 小时前
使用Docker安装nanobot(超轻量个人AI助手)
docker·容器
HealthScience2 小时前
github怎么授权ssh(私人库授权)
运维·ssh·github
恋红尘3 小时前
K8S 配置与调度-叩丁狼
云原生·容器·kubernetes
喵喵爱自由4 小时前
Docker容器共享宿主机-安全网络
网络·安全·docker
乔宕一4 小时前
windows SSH服务修改SSH登陆后的默认终端
运维·windows·ssh
杨浦老苏4 小时前
搜索引擎聚合器Degoog
搜索引擎·docker·群晖