使用Drone CI同时部署两台服务器时遇strconv.Atoi语法错误求解决
解决Drone CI部署多服务器时的strconv.Atoi错误
错误原因
strconv.Atoi: parsing "": invalid syntax 错误源于配置中某个需整数类型的字段被解析为空字符串。结合你要部署两台服务器的需求,核心问题是单服务器配置结构不支持多节点部署,且可能遗漏了必填的整数类型字段(如SSH端口)。
修复步骤
- 将配置中的
server字段改为servers数组,每个数组元素对应一台服务器的配置,以此支持多节点部署 - 为每个服务器配置显式指定
port字段,即使使用默认22端口,也能避免空值解析错误
修改后的.drone.yml配置示例:
kind: pipeline type: ssh name: default servers: - host: 第一台服务器IP/域名 user: root port: 22 ssh_key: from_secret: 对应第一台服务器的SSH密钥secret - host: 第二台服务器IP/域名 user: root port: 22 ssh_key: from_secret: 对应第二台服务器的SSH密钥secret clone: disable: true steps: - name: Auto Deploy commands: - echo Auto Deploy Start - /app/xxx/deploy_front.sh
额外检查点
- 确认Drone后台已正确配置好每个服务器对应的SSH密钥secret
- 验证服务器的SSH端口是否正确,若不是默认22,需修改
port值为实际端口
内容的提问来源于stack exchange,提问作者staygolditsumo
相关产品推荐
相关产品推荐

