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

参考

相关推荐
袁煦丞 cpolar内网穿透实验室18 分钟前
出差路上,服务器在我手机里
运维·服务器·docker·容器·智能手机·远程工作·cpolar
9命怪猫13 小时前
[K8S小白问题集] - Calico好在哪里?
网络·云原生·容器·kubernetes
齐潇宇13 小时前
k8s-Helm管理器
linux·运维·云原生·容器·kubernetes
Zhu75813 小时前
[软件部署]在k8s环境部署alist
云原生·容器·kubernetes
o_insist14 小时前
Docker 入门:从镜像、容器到项目部署
docker·自动化运维·devops
冷小鱼15 小时前
Dockerfile 编写与优化完全指南:从入门到生产级实践
docker·docker file
Cat_Rocky16 小时前
K8S-Helm简单学习分享
学习·容器·kubernetes
ziqi52217 小时前
Docker compose 和共享数据
运维·docker·容器
Zhu75818 小时前
[配置管理]k8s集群中airflow的端口转发
云原生·容器·kubernetes
泓博18 小时前
Macbook Docker Compose不识别
运维·docker·容器