本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
sshd-docker 是一个预装 SSH 守护进程(sshd)的 Docker 镜像,旨在为容器提供 SSH 服务能力,支持通过 SSH 协议远程连接容器内部。该镜像通常基于轻量级 Linux 发行版(如 Alpine、Ubuntu 等,具体取决于镜像版本)构建,核心目标是简化容器的远程访问与管理流程,适用于需要通过 SSH 协议与容器交互的场景。
docker run 命令)通过 docker run 快速启动容器并暴露 SSH 服务:
# 基础示例:使用密码认证,映射主机端口 2222 到容器 SSH 端口 22 docker run -d \ --name sshd-container \ -p 2222:22 \ -e ROOT_PASSWORD=your_secure_password \ sshd-docker # 密钥认证示例:添加本地公钥到容器,禁用密码认证 docker run -d \ --name sshd-container \ -p 2222:22 \ -e AUTHORIZED_KEYS="$(cat ~/.ssh/id_rsa.pub)" \ -e DISABLE_PASSWORD_AUTH=true \ sshd-docker
创建 docker-compose.yml 文件,定义服务并持久化配置:
version: '3' services: sshd: image: sshd-docker container_name: sshd-service ports: - "2222:22" # 主机端口 2222 映射到容器 SSH 端口 22 environment: - ROOT_PASSWORD=your_secure_password # 可选:设置 root 密码(若使用密码认证) - AUTHORIZED_KEYS=ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQ... # 可选:添加授权公钥(多个公钥用换行分隔) - SSH_PORT=22 # 可选:自定义容器内 SSH 服务端口(默认 22) volumes: - ./ssh-config:/etc/ssh # 可选:挂载本地 SSH 配置目录(覆盖容器默认配置) - ./data:/root/data # 可选:挂载数据卷,持久化容器内数据 restart: unless-stopped
启动服务:
docker-compose up -d
| 环境变量名 | 描述 | 默认值 | 示例 |
|---|---|---|---|
ROOT_PASSWORD | 设置 root 用户密码(用于密码认证,若同时配置 AUTHORIZED_KEYS,密码认证仍可用) | 无 | ROOT_PASSWORD=SecurePass123! |
AUTHORIZED_KEYS | 添加 SSH 公钥到 ~/.ssh/authorized_keys(用于密钥认证,支持多个公钥,用换行分隔) | 无 | AUTHORIZED_KEYS="ssh-rsa AAA...\nssh-rsa BBB..." |
DISABLE_PASSWORD_AUTH | 是否禁用密码认证(true 或 false,推荐启用密钥认证时设为 true) | false | DISABLE_PASSWORD_AUTH=true |
SSH_PORT | 自定义容器内 SSH 服务监听端口(需同步调整端口映射) | 22 | SSH_PORT=2222 |
容器内 SSH 服务默认监听 22 端口,需通过 -p 参数映射到主机端口(如 -p 2222:22,表示主机端口 2222 对应容器端口 22)。若自定义 SSH_PORT,需同步调整映射(如 SSH_PORT=2222 时,映射 -p 2223:2222)。
sshd_config 文件到容器 /etc/ssh/sshd_config,自定义 SSH 服务配置(如禁用 root 登录、限制 IP 访问等)。docker run -d \ -p 2222:22 \ -v ./sshd_config:/etc/ssh/sshd_config \ sshd-docker
~/.ssh/authorized_keys,避免通过环境变量传递长字符串(适用于公钥较多的场景)。docker run -d \ -p 2222:22 \ -v ~/.ssh/id_rsa.pub:/root/.ssh/authorized_keys:ro \ sshd-docker
启动容器后,通过以下命令远程连接:
# 密码认证(需设置 ROOT_PASSWORD) ssh root@localhost -p 2222 # 密钥认证(需配置 AUTHORIZED_KEYS 或挂载公钥) ssh -i ~/.ssh/id_rsa root@localhost -p 2222
若需深度自定义 SSH 服务(如修改默认端口、禁用 root 登录、限制用户等),可通过挂载 sshd_config 文件实现。示例自定义配置(sshd_config):
Port 2222 # 自定义端口 PermitRootLogin no # 禁用 root 直接登录 AllowUsers appuser # 仅允许 appuser 用户登录 PasswordAuthentication no # 禁用密码认证 PubkeyAuthentication yes # 启用密钥认证
启动容器时挂载该文件:
docker run -d \ -p 2222:2222 \ # 端口映射需与自定义 Port 一致 -v ./sshd_config:/etc/ssh/sshd_config \ sshd-docker
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429