SSH 从 circleci 进入 digitalocean 服务器
SSH into digitalocean server from circleci
我正在尝试通过 circleci 引入一些自动化,它将通过 ssh 进入在 digitalocean 中创建的服务器,以便输入更新所述服务器的命令。我不太确定该怎么做。如果我直接使用 ssh IP ADDRESS 命令开始,它将保持
不会分配伪终端,因为标准输入不是终端。
无法确定主机“IP 地址(IP 地址)”的真实性。
本来是问我要不要继续连接,我会回答是,但是直到失败后才出现,所以甚至没有添加是 |命令将起作用。我还尝试生成一个 ssh 密钥,然后我可以将其添加到 digitalocean 中接受的 ssh 密钥列表中,但由于我无法与之交互,我无法按照 ssh-keygen -t rsa 后面的提示进行操作-b 4096 -C 命令。有人有什么想法吗?我肯定被难住了。
要从 CircleCI 通过 SSH 连接到 Digital Ocean,您需要做几件事:
密钥管理
- 创建 SSH 密钥。将 public 密钥添加到您计划使用的用户的 DO 服务器上的
./ssh/authorized_keys
文件中。
- 在 CircleCi 项目设置中的 SSH Keys 部分,Additional SSH Keys 面板中添加您的私钥。单击 添加 SSH 密钥 ,将 主机名 留空(重要)并粘贴您的密钥。
- 复制您的密钥指纹。
将您的私钥注入您的 CircleCI 实例
在您的 .circleci/Config.yml
配置文件中,添加一个步骤以将您的私钥注入您的 CircleCi 实例:
- add_ssh_keys:
fingerprints:
- "[ADD YOUR SSH FINGERPRINT HERE]"
忽略 SSH 警告
在使用它之前修改 ssh 客户端配置以忽略警告:
- run:
name: SSH into DO
command: |
echo "disregard ssh known_hosts warnings"
echo "UserKnownHostsFile=/dev/null" > ~/.ssh/config
echo "StrictHostKeyChecking=no">> ~/.ssh/config
ssh something something
我正在尝试通过 circleci 引入一些自动化,它将通过 ssh 进入在 digitalocean 中创建的服务器,以便输入更新所述服务器的命令。我不太确定该怎么做。如果我直接使用 ssh IP ADDRESS 命令开始,它将保持
不会分配伪终端,因为标准输入不是终端。 无法确定主机“IP 地址(IP 地址)”的真实性。
本来是问我要不要继续连接,我会回答是,但是直到失败后才出现,所以甚至没有添加是 |命令将起作用。我还尝试生成一个 ssh 密钥,然后我可以将其添加到 digitalocean 中接受的 ssh 密钥列表中,但由于我无法与之交互,我无法按照 ssh-keygen -t rsa 后面的提示进行操作-b 4096 -C 命令。有人有什么想法吗?我肯定被难住了。
要从 CircleCI 通过 SSH 连接到 Digital Ocean,您需要做几件事:
密钥管理
- 创建 SSH 密钥。将 public 密钥添加到您计划使用的用户的 DO 服务器上的
./ssh/authorized_keys
文件中。 - 在 CircleCi 项目设置中的 SSH Keys 部分,Additional SSH Keys 面板中添加您的私钥。单击 添加 SSH 密钥 ,将 主机名 留空(重要)并粘贴您的密钥。
- 复制您的密钥指纹。
将您的私钥注入您的 CircleCI 实例
在您的 .circleci/Config.yml
配置文件中,添加一个步骤以将您的私钥注入您的 CircleCi 实例:
- add_ssh_keys:
fingerprints:
- "[ADD YOUR SSH FINGERPRINT HERE]"
忽略 SSH 警告
在使用它之前修改 ssh 客户端配置以忽略警告:
- run:
name: SSH into DO
command: |
echo "disregard ssh known_hosts warnings"
echo "UserKnownHostsFile=/dev/null" > ~/.ssh/config
echo "StrictHostKeyChecking=no">> ~/.ssh/config
ssh something something