目标
把一台你拥有的 Linux 服务器注册为 Appaloft 的部署目标,并确认 Appaloft 能通过 SSH 安全连接它。
适用场景
- 第一次接入一台新服务器。
- 需要迁移到新机器,或者临时排查某台服务器的连通性问题。
前置条件
- 一台可以通过 SSH 访问、你拥有 root 或 sudo 权限的 Linux 服务器。
- 一个 SSH key(推荐使用专用的部署 key,而不是你的个人登录 key)。
输入与默认值
| 输入 | 说明 | 默认值 |
|---|---|---|
host | 明确的 hostname、IPv4 或 IPv6 地址 | 无,必填;不接受 CIDR、URL 或 host:port 形式 |
port | SSH 端口 | 22 |
user | 用于连接的系统用户 | 无,必填 |
| 凭据 | SSH key 路径 / 已保存凭据 / 一次性输入 | 无,必填 |
| 显示名称 / 标签 | 帮助你在列表中区分服务器 | 可选 |
服务器注册输入里不应该出现资源、环境或域名相关字段——那些是独立的配置层。
Web 操作步骤
- 进入 Servers,点击 Register server。
- 填写 host、port、user 和 SSH 凭据(可以粘贴私钥内容,或选择已保存的凭据)。
- 提交后 Appaloft 会立即运行连接测试,并展示结果。
CLI 操作步骤
# 注册一台 IPv4 服务器
appaloft server register \
--name primary \
--host 203.0.113.10 \
--port 22 \
--provider generic-ssh \
--target-kind single-server
# 注册一台仅 IPv6 的服务器
appaloft server register \
--name ipv6-primary \
--host 2001:db8::1 \
--port 22 \
--provider generic-ssh
# 手动重新运行连接测试
appaloft server test srv_primary
# 查看服务器详情(不会触发新的连接测试)
appaloft server show srv_primary
# 重命名(只影响显示名称)
appaloft server rename srv_primary --name "Primary SSH server"Docker Swarm 等集群目标需要显式声明形态:
appaloft server register \
--name swarm-cluster \
--host 203.0.113.20 \
--provider docker-swarm \
--target-kind orchestrator-cluster预期输出与状态
连接测试会检查:DNS/IP 与端口是否可达、SSH 凭据是否可用、目标用户是否有部署所需权限、基础运行环境是否满足要求,必要时还会返回代理或 Docker 相关诊断。测试结果会区分主机名解析失败、网络/主机不可达、认证失败和 host-key 验证失败几类原因,而不是笼统报错。
验证
- 命令或 Web 界面显示连接测试通过。
- 运行
appaloft server show srv_primary,确认状态、Provider 和摘要信息符合预期。
回滚 / 恢复
| 现象 | 恢复方式 |
|---|---|
| 连接超时 | 检查 host、port、防火墙和网络路径 |
| 认证失败 | 检查 SSH key、user 和服务器上的 authorized_keys |
| 权限不足 | 确认目标用户能执行部署所需命令 |
| 运行环境缺失 | 按诊断提示安装或切换到受支持的 Provider/运行时 |
连接测试通过后,继续配置 SSH 凭据管理和代理就绪与终端会话。
不再需要某台服务器时,先停用再删除:
appaloft server deactivate srv_primary
appaloft server delete-check srv_primary
appaloft server delete srv_primary --confirm srv_primary删除前的安全检查会阻止删除仍处于活跃状态、仍有部署历史、资源、域名、证书或审计保留记录的服务器;删除本身也不会自动清理这些记录。