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

参考

相关推荐
智慧地球(AI·Earth)9 小时前
在Linux上使用Claude Code 并使用本地VS Code SSH远程访问的完整指南
linux·ssh·ai编程
原神启动19 小时前
Docker 场景化作业:生产环境容器操作实训
运维·docker·容器
呼啦啦呼啦啦啦啦啦啦11 小时前
docker制作镜像的两种方式(保姆级教学)
运维·docker·容器
qq_4557608512 小时前
docker - 网络
运维·docker·容器
m0_4887776514 小时前
Docker容器技术场景化操作实战及网络模式部署
运维·docker·容器·网络模式
2501_9399090514 小时前
Docker
运维·docker·容器
人工智能训练15 小时前
Docker Desktop WSL 集成配置宝典:选项拆解 + 精准设置指南
linux·运维·服务器·人工智能·docker·容器·ai编程
提伯斯64615 小时前
ssh远程连接报错WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! :本地ssh公钥不一致问题
运维·ssh
阿杰AJie15 小时前
安装 docker.io(不走外网 Docker 域名)
后端·docker
伞啊伞15 小时前
docker作业
运维·docker·容器