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

参考

相关推荐
啦啦啦小石头18 分钟前
Docker 换源
docker
德育处主任Pro1 小时前
『NAS』用SSH的方式连上NAS
运维·ssh
等什么君!3 小时前
docker -数据卷技术
运维·docker·容器
上天_去_做颗惺星 EVE_BLUE4 小时前
Docker高效使用指南:从基础到实战模板
开发语言·ubuntu·docker·容器·mac·虚拟环境
AI逐月5 小时前
tmux 常用命令总结:从入门到稳定使用的一篇实战博客
linux·服务器·ssh·php
好好沉淀5 小时前
Docker开发笔记(详解)
运维·docker·容器
禅口魔心7 小时前
Win10 + WSL2 + Docker:K510(DongshanPI-Vision)开发环境从踩坑到跑通全记录(交叉编译 + 上板运行)
docker·嵌入式开发·wsl2·k510
Ankie Wan7 小时前
cgroup(Control Group)是 Linux 内核提供的一种机制,用来“控制、限制、隔离、统计”进程对系统资源的使用。
linux·容器·cgroup·lxc
Free Tester8 小时前
基于已有容器生成Dockerfile
docker
lcx_defender8 小时前
【Docker】Docker部署运行nacos
运维·docker·容器