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

参考

相关推荐
典典分享指南23 分钟前
用大模型把写作 SOP 变成可复用 Prompt
docker·jupyter·eclipse·phpstorm·myeclipse
sryyd_0238 分钟前
Kubernetes Pod 管理从入门到实战:命令、YAML 与生命周期全解析
云原生·容器·kubernetes
mooooooooooye3 小时前
SSH 工具越用越乱,Xterminal 先清掉这三类失效连接
运维·ssh·github
Larru-Sun4 小时前
从零开始用 Docker 部署 Node.js 后端服务
docker·容器·node.js
feilieren6 小时前
ubuntu 安装 docker
linux·ubuntu·docker
judezh6 小时前
一个 Agent 平台要起 12 个容器,做演示能砍到几个?
docker
飞询6 小时前
ubuntu 安装 docker
ubuntu·docker
mister_guo7 小时前
Docker、Docker Compose 与 Kubernetes:分别解决什么问题?
docker·容器·kubernetes
tryCbest8 小时前
Kubernetes(K8s)容器化部署
云原生·容器·kubernetes
gx23488 小时前
k8spod管理
linux·容器·kubernetes