-
在一个文件夹中创建
dockerfile文件,文件内容如下powershell# 使用官方的 Ubuntu 镜像 FROM ubuntu:latest # 安装 SSH 服务 RUN apt-get update && apt-get install -y openssh-server # 创建 SSH 目录并设置权限 RUN mkdir -p /var/run/sshd && ssh-keygen -A RUN echo 'root:123456' | chpasswd # 显式开启 root + 密码登录,避免不同基础镜像默认值差异 # PermitRootLogin yes:允许 root 登录 # PasswordAuthentication yes:允许密码认证 # KbdInteractiveAuthentication no:关闭交互式认证(避免和密码认证混杂) # UsePAM no:关闭 PAM(容器场景常用于减少兼容问题) RUN sed -ri 's/^#?PermitRootLogin\s+.*/PermitRootLogin yes/' /etc/ssh/sshd_config \ && sed -ri 's/^#?PasswordAuthentication\s+.*/PasswordAuthentication yes/' /etc/ssh/sshd_config \ && sed -ri 's/^#?KbdInteractiveAuthentication\s+.*/KbdInteractiveAuthentication no/' /etc/ssh/sshd_config \ && sed -ri 's/^#?UsePAM\s+.*/UsePAM no/' /etc/ssh/sshd_config # 暴露 SSH 端口 EXPOSE 22 # 设置容器启动时自动运行 SSH 服务 CMD ["/usr/sbin/sshd", "-D"] -
在
dockerfile文件所在的文件夹中打开终端,输入如下命令构建一个镜像,镜像名字叫ubuntu-with-sshpowershelldocker build -f dockerfile -t ubuntu-with-ssh . -
在终端中输入如下命令,将根据镜像运行一个容器,容器名字叫
ubuntu-sshpowershelldocker run -d -p 2222:22 --name ubuntu-ssh ubuntu-with-ssh -
在终端中使用如下命令,根据提示输入密码,就可以连接ubuntu 了
- 注意:端口用的是主机的
2222端口
powershellssh root@127.0.0.1 -p 2222- 如果是使用软件连的,可以参考图片

- 注意:端口用的是主机的
在Docker 建立一个SSH连接的 Ubuntu 容器
草木红2026-05-15 8:37
相关推荐
AOwhisky4 小时前
下一代容器来了?Docker 宣布原生支持 WebAssembly不羁的木木7 小时前
HarmonyOS APP实战-基于Image Kit的图像处理APP - 第9篇:批量处理与编辑历史春卷同学8 小时前
HarmonyOS掌上记账APP开发实践第15篇:ArkTS 类型系统深度解析 — 从接口到联合类型的灵活运用念何架构之路10 小时前
Docker 容器状态机 学习jieyucx10 小时前
Docker 入门第六阶段:综合实战项目不能只会打代码11 小时前
Day 002 — Python 工程化 & FastAPI & 数据库速通海涛从不浪12 小时前
03 oect刷入Armbian后安装Onepanel并进行docker迁移春卷同学14 小时前
HarmonyOS掌上记账APP开发实践第18篇:编译时优化与 ArkTS 语法限制 — 提升应用性能的编码规范爸爸61914 小时前
鸿蒙应用开发实战【08】— AppStorage 全局状态与跨页面通信yanjieliyun14 小时前
家庭服务器从入门到精通 · 第 5 篇 · NPM反向代理从安装到起飞:一条命令搞定HTTPS