-
在一个文件夹中创建
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
相关推荐
2601_961194021 小时前
27考研刘晓艳单词pdfIrene19911 小时前
Win11 自动更新导致 Docker Desktop 无法正常启动,Oracle SQL Developer 启动时报错shandianchengzi3 小时前
【记录】Ghidra|Ubuntu 26.04 下 Ghidra 界面缩放完整指南Soari3 小时前
Ubuntu 根分区文件系统损坏,系统启动时自动检查失败darkdragonking4 小时前
OpenEuler 22.03 ,以docker ce 安装 Milvus 及可视化工具我叫张土豆5 小时前
V100 显卡部署 Qwen3-ASR-1.7B 语音识别模型(vLLM + Docker 完整教程)极客先躯7 小时前
高级java每日一道面试题-2026年01月18日-实战篇[Docker]-如何清理仓库中的旧镜像?ModestCoder_7 小时前
windows/ubuntu解决挂梯子但是codex reconnecting五次的问题禹凕7 小时前
Linux基础——环境木雷坞9 小时前
Docker Hub、GHCR、Quay 混在一起后,镜像源要分开测