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

参考

相关推荐
another heaven2 小时前
【Docker/虚拟机 深度对比Docker与虚拟机:原理、区别与最佳使用场景】
运维·docker·容器
独自归家的兔2 小时前
2026年4月16日 Ubuntu系统 Docker 的安装与配置
运维·docker·容器
舒一笑2 小时前
Docker 离线镜像导入后变成 <none>:<none>?一文讲透原因、排查与正确打包姿势
后端·docker·容器
Bonnienienie3 小时前
服务器Docker实例化容器 -- 踩坑大全
docker
殷紫川4 小时前
Docker Compose实战指南
运维·docker
鹅是开哥6 小时前
XXL-Job Docker 部署中“登录无响应”的排查与解决
运维·docker·容器
HYNuyoah8 小时前
3X-UI Reality 搭建指南
ubuntu·ui·docker
木雷坞8 小时前
2026年4月实测:K8s containerd 镜像拉取全方案汇总
运维·容器·kubernetes
小夏子_riotous20 小时前
Docker学习路径——3、常用命令
linux·运维·服务器·学习·docker·容器·centos
HYNuyoah1 天前
docker 安装win10系统
运维·docker·容器