docker - Docker 容器 Ubuntu SSH 访问
问题描述
我安装了一个新的 docker 容器(标准的 Ubuntu 最新版本)。我想通过 SSH 访问连接它。我按照这个优秀链接https://linuxconfig.org/how-to-connect-to-docker-container-via-ssh上的说明进行操作
一旦我停止容器并重新启动它,SSH 服务就不再可用。我必须随时手动启动它。我也试过这个命令“systemctl enable ssh”来将ssh配置为永久。结果如下:
“使用 /lib/systemd/systemd-sysv-install 将 ssh.service 的状态与 SysV 服务脚本同步。执行:/lib/systemd/systemd-sysv-install enable ssh”
所以一切似乎都很好,但是当我停止容器并重新启动它时,问题仍然存在,ubuntu 上没有启动 ssh 服务。
有人知道如何在这种情况下将 SSH 访问配置为永久访问吗?
提前感谢大家的帮助:)
解决方案
您必须编写一个自定义的 Dockerfile,并在其中检测 SSH 配置,因此,每次运行容器时,它都会有一个工作的 SSH 守护进程。
关于重新运行容器时丢失 SSH 配置的问题是由于您从原始(非 SSH 配置)Ubuntu 映像中创建了一个新容器。如果要运行配置的容器,则必须通过 docker docker container ls --all' and copy the ID, the run the container by
run {{ID}}` 获取容器 lsit。
推荐阅读
- qlikview - QlikView 使用表达式结果作为选择或列表框
- wordpress - 预计下一件事是转义功能:WordPress
- sql-server - 将大型 SQL Server 表从一个数据库移动到另一个数据库的最佳方法?
- javascript - 如何在 tizen tv 网络应用程序中安全地存储密钥?
- spring-boot - 在 Spring JPA 中,我们如何获取对 XML 文件或 bean.xml 的查询(如 ibatis)?
- angular - defer() 不会对页面刷新产生影响
- powershell - PowerShell 比较输出
- python - 从 oauth2client.service_account 导入 ServiceAccountCredentials 时语法无效
- mysql - 在大型更新时从 mysql 触发器向 gearman 发送作业
- restructuredtext - 在 reStructuredText 中使用标签