我正在尝试使用python-digitalocean库创建带有SSH密钥的droplets。由于某些原因,ssh密钥没有附加到新创建的快捷批处理程序。
你知道我能做什么吗?
发布于 2019-05-02 02:48:52
在创建新的快捷批处理时,python-digitalocean接受多种格式的SSH密钥。需要记住的一件重要事情是,即使您只添加一个键,属性也需要以列表的形式存在。
下面是一个简单的例子:
import os
import digitalocean
token = os.getenv('DO_TOKEN')
client = digitalocean.Manager(token=token)
keys = client.get_all_sshkeys()
droplet = digitalocean.Droplet(name='ssh-key-example-01',
region='nyc3',
size='s-1vcpu-1gb',
image='ubuntu-18-04-x64',
ssh_keys=[ keys[0], 3939600,
'b6:2e:fa:ea:96:42:14:1b:62:e2:76:4b:6f:60:1a:e6'],
token=token)此示例突出显示了可接受的三种表单:
keys[0]是使用以下命令检索的SSHKey对象:client.get_all_sshkeys()3939600是我的DigitalOcean帐户上的SSH密钥的ID,因为integerb6:2e:fa:ea:96:42:14:1b:62:e2:76:4b:6f:60:1a:e6是我的DigitalOcean帐户上的SSH密钥的指纹如果你想将你账户上的所有密钥添加到一个Droplet中,最简单的方法是:
keys = client.get_all_sshkeys()
droplet = digitalocean.Droplet(name='ssh-key-example-01',
region='nyc3',
size='s-1vcpu-1gb',
image='ubuntu-18-04-x64',
ssh_keys=keys,
token=token)这是可行的,因为client.get_all_sshkeys()已经在列表中返回了它们。
https://stackoverflow.com/questions/55933948
复制相似问题