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

参考

相关推荐
小蓝波4 小时前
docker 的命令
java·docker·容器
2301_801184756 小时前
docker 工作
java·docker·容器
单位圆的日常7 小时前
FRP反向隧道实现异地SSH家用Linux
linux·运维·ssh·frp
至乐活着8 小时前
ELK日志系统从零搭建到实战:Nginx日志采集与可视化全攻略
nginx·elk·elasticsearch·docker·日志系统
tjl521314_218 小时前
Git SSH Host Key Verification Failed 问题排查与解决
运维·git·ssh
想你依然心痛9 小时前
AtomCode 在 DevOps 场景中的实战:CI/CD 流水线脚本自动生成
运维·ci/cd·docker·devops·自动化部署·github actions
摇滚侠9 小时前
DockerHub 在国内有没有替代
docker
是大强10 小时前
Docker中文件修改的三种方法
运维·docker·容器
Jurio.21 小时前
Codex App SSH 远程开发教程:本地连接远程服务器项目
服务器·ssh·远程工作·codex