如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
sshd-docker 是一个预装 SSH 守护进程(sshd)的 Docker 镜像,旨在为容器提供 SSH 服务能力,支持通过 SSH 协议远程连接容器内部。该镜像通常基于轻量级 Linux 发行版(如 Alpine、Ubuntu 等,具体取决于镜像版本)构建,核心目标是简化容器的远程访问与管理流程,适用于需要通过 SSH 协议与容器交互的场景。
docker run 命令)通过 docker run 快速启动容器并暴露 SSH 服务:
bash# 基础示例:使用密码认证,映射主机端口 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 文件,定义服务并持久化配置:
yamlversion: '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
启动服务:
bashdocker-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 访问等)。bashdocker run -d \ -p 2222:22 \ -v ./sshd_config:/etc/ssh/sshd_config \ sshd-docker
~/.ssh/authorized_keys,避免通过环境变量传递长字符串(适用于公钥较多的场景)。bashdocker run -d \ -p 2222:22 \ -v ~/.ssh/id_rsa.pub:/root/.ssh/authorized_keys:ro \ sshd-docker
启动容器后,通过以下命令远程连接:
bash# 密码认证(需设置 ROOT_PASSWORD) ssh root@localhost -p 2222 # 密钥认证(需配置 AUTHORIZED_KEYS 或挂载公钥) ssh -i ~/.ssh/id_rsa root@localhost -p 2222
若需深度自定义 SSH 服务(如修改默认端口、禁用 root 登录、限制用户等),可通过挂载 sshd_config 文件实现。示例自定义配置(sshd_config):
confPort 2222 # 自定义端口 PermitRootLogin no # 禁用 root 直接登录 AllowUsers appuser # 仅允许 appuser 用户登录 PasswordAuthentication no # 禁用密码认证 PubkeyAuthentication yes # 启用密钥认证
启动容器时挂载该文件:
bashdocker run -d \ -p 2222:2222 \ # 端口映射需与自定义 Port 一致 -v ./sshd_config:/etc/ssh/sshd_config \ sshd-docker
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。





来自真实用户的反馈,见证轩辕镜像的优质服务