-
在一个文件夹中创建
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
相关推荐
奔跑的大白啊6 小时前
多容器共享目录权限踩坑记酣大智12 小时前
H3C MSR3600 交换机配置 SSHsbjdhjd15 小时前
云安全 | Docker 容器逃逸复盘(二):2375 未授权接口如何突破容器管理边界缘友一世16 小时前
银河护卫队在steam(linux Proton GE-Proton10-34)上启动无窗口问题修复刘胡子大叔17 小时前
repo 与 index:站点目录该怎么切吴声子夜歌17 小时前
Docker入门与实战——初识Docker与容器JavaPub-rodert17 小时前
公共 Docker 镜像源总失效?用 Harbor Proxy Cache 自建 Docker Hub 镜像缓存YZ12255219 小时前
【Docker专题】使用Docker部署Vue-Flask项目前后端分离版【前端Docker部署】MrSYJ19 小时前
Docker端口映射咋做的,模拟下。bluebonnet2720 小时前
【docker】容器内映射外部音频驱动