如何通过 SSH 连接到 Docker 容器
2023-09-27 14:27:53 时间
SSH 是系统管理员工具箱中最常用的命令之一,但它并不常见于 Docker。以下是如何通过 SSH 连接到正在运行的容器,以及为什么在这样做之前应该三思而后行。
你应该在 Docker 容器中使用 SSH 吗?
SSH 进入 Docker 容器通常是一种不好的做法,应该避免。docker exec使用命令在容器中获取 shell几乎总是更好。
Docker 新手可能会尝试使用 SSH 来更新容器内的文件。容器应该是一次性的,所以它们在创建后应该被视为不可变的,除了存储在卷中的持久数据。编辑源代码时创建新图像并重新启动容器。
除了多步骤配置过程之外,在 Docker 映像中安装 SSH 会添加几个依赖包并暴露另一个潜在的攻击向量。在具有多个活动容器的系统上,您将运行多个独立的 SSH 进程,并且必须记住每个容器的正确端口。
无需将 SSH 添加到单个容器,只需在运行 Docker 的物理主机上安装一次即可。使用 SSH 连接到您的主机,然后运行docker exec -it my-container bash以访问各个容器。
虽然docker exec是首选方法,但仍然存在 SSH 可能有用的场景。您可以将其作为权宜之计引入,以与遗留部署系统集成。它也可能被一些 IDE 和构建工具用于在开发期间提供实时重新加载功能。
相关文章
- Linux进阶教程丨第8章:配置和保护SSH
- 014-配置SSH免密钥登录
- [ci]jenkins-slave-ssh docker容器化-用户名密码
- Java 打造一款 SSH 客户端,已开源~
- ssh实验室预约系统
- Linux登录ssh携带密码
- docker映射端口与ssh访问或容器访问
- ssh面试题
- Spring学习8-用MyEclipse搭建SSH框架 Struts Spring Hibernate
- xshell:登陆执行脚本(命令)【ssh自动多级跳转】
- 设置ssh只允许用户从指定的IP登陆
- 大数据IMF传奇行动 UBUNTU的SSH SECURECRT不能登陆 与 vmvare net 8的问题解决
- SSH端口修改及限制IP登录及禁止ROOT远程登录方法
- SSH密钥安全连接
- .NET(C#) 通过sftp(SSH.NET)从Linux服务器上下载文件及示例代码
- 你应该为 Git 使用 HTTPS 还是 SSH?
- ev3dev :利用ssh登录系统
- ssh用法及命令
- ssh 登录进入 docker container
- SSH免密登录
- docker映射端口与ssh访问或容器访问