爬坑--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

参考

相关推荐
ggaofeng24 分钟前
k8s网络原理
网络·容器·kubernetes
qinyia1 小时前
解锁服务器网络配置新姿势:Wisdom SSH 助力之旅
服务器·网络·ssh
Dxy12393102163 小时前
Dockerfile文件常用配置详解
开发语言·docker
m_1368714 小时前
Mac Intel 芯片部署 YOLO(Docker 方式,支持离线打包与 Compose 管理)
yolo·macos·docker
潘晓可14 小时前
Nextcloud 实战:打造属于你的私有云与在线协作平台
docker
衍余未了15 小时前
centos9 docker启动不起来,docker启动发生堵塞问题!
运维·docker·容器
我真的是大笨蛋15 小时前
K8S-基础架构
笔记·云原生·容器·kubernetes
tianyuanwo17 小时前
Docker Registry 实现原理、适用场景、常用操作及搭建详解
运维·docker·容器·registry
木二_17 小时前
附050.Kubernetes Karmada Helm部署联邦及使用
容器·kubernetes·karmada·kubernetes联邦·集群联邦
wdxylb18 小时前
Kubernetes实战系列(4)
云原生·容器·kubernetes