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

参考

相关推荐
wuxuanok2 小时前
Debug —— 部署微服务中微服务的配置文件及本地注册Nacos没问题但部署到Docker中就注册失败
docker·微服务·架构
曦樂~2 小时前
【Docker】Dockerfile自定义镜像
运维·docker·容器
胡斌附体2 小时前
docker desktop 限制wsl使用内存空间
docker·docker desktop·wsl·卡死·限制内存占用·限制内存
拾心212 小时前
【云运维】Kubernetes安装(基于 Docker + Calico)
运维·docker·kubernetes
Caster_Z3 小时前
Windows环境安装Docker
运维·docker·容器
不老刘3 小时前
使用 Docker Compose 一键更新:深入理解 docker-compose pull 的适用场景
docker·容器·eureka·cline
百***07183 小时前
IDEA+Docker一键部署项目SpringBoot项目
spring boot·docker·intellij-idea
醉风塘3 小时前
MongoDB Docker 镜像制作与部署指南
数据库·mongodb·docker
C2H5OH6663 小时前
Podman讲解
docker·centos·vmware·podman·wsl2·sqlbot
m0_738120723 小时前
网络安全编程——基于Python实现的SSH通信(Windows执行)
python·tcp/ip·安全·web安全·网络安全·ssh