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

参考

相关推荐
苍煜1 天前
Docker容器网络详解+端口映射原理(系列第二篇:实战核心)
网络·docker·容器
gwjcloud1 天前
Kubernetes从入门到精通(高级篇)04
云原生·容器·kubernetes
张文君1 天前
上古世纪服务端编译安装AAEmu docker编译安装
运维·docker·容器
蜡笔婧萱1 天前
Linux--远程登录服务ssh
linux·服务器·ssh
Stackflowed1 天前
Docker安装Oracle
docker·oracle·容器
邵奈一1 天前
OrbStack 环境下 Dify 启动报错完整解决方案教程:validating docker-compose.yaml
docker·容器·eureka
一只小bit1 天前
Docker 镜像制作:包含自定义镜像及常用命令
运维·docker·容器
苍煜2 天前
K8s 核心资源详解(Pod/Deployment/Service 实战)
云原生·容器·kubernetes
江湖有缘2 天前
容器化笔记:Memory应用在Docker环境下的部署与配置
笔记·docker·容器
苍煜2 天前
Docker Compose 多容器编排实战(系列第五篇:开发环境一键部署)
运维·docker·容器