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

参考

相关推荐
通知风来过2 分钟前
docker下得dify得镜像站
运维·docker·容器
独断万古他化6 分钟前
Docker 镜像核心知识:概念、作用与常用命令全解
docker·镜像·image
KV_T9 分钟前
Containerd vs Docker:详细对比
容器
天才少女爱迪生19 分钟前
在 VSCode 中配置 SSH 并实现 X11 转发:服务器程序远程桌面显示
ide·vscode·ssh
qq_1715203520 分钟前
linux服务器springboot(docker)项目word转pdf中文乱码
linux·spring boot·docker·pdf·word
玩电脑的辣条哥24 分钟前
Docker Compose 环境变量未生效与镜像标签缺失问题的排查与解决
运维·docker·容器
Wpa.wk1 小时前
Docker容器隔离(namespace+cgroups)-底层原理
运维·docker·容器
修己xj1 小时前
Docker 部署 PicGo:一次配置,随处使用
运维·docker·容器
Ha_To1 小时前
2026.1.29 docker的使用
运维·docker·容器
Hellc0071 小时前
Jenkins 上下游 Job + Docker 镜像部署完整实战(避坑版)
java·docker·jenkins