我正在使用 python-django charm 部署一个基于 django 的小型网站,其中本地供应商用于测试目的。到目前为止,部署本身已经成功,但我希望能够在不juju ssh
进入网站的情况下管理网站。
因此,我尝试使用python-django charm 文档,但每当我尝试使用 执行任务时fab
,系统都会要求我输入"Login password for 'ubuntu': "
。也就是说,SSH 身份验证似乎不起作用。它如下所示:
# Get fabfile.py from the charm code
bzr branch lp:charms/python-django
cd python-django
fab -R ubucon-site/7 pull
[10.0.3.252] Executing task 'pull'
[10.0.3.252] sudo: find . -name '*.pyc' -delete
[10.0.3.252] Login password for 'ubuntu':
另外需要注意的是,似乎有一个Juju 结构插件它基于与 python-django charm 中相同的代码,因此 fabfile.py 文件实际上可能是通用的,而不是特定于 python-django charm。
关于如何将 fabric 与 juju 结合使用,您有什么想法吗?或者您能告诉我我可能做错了什么吗?
答案1
看起来 Fabric 使用的是标准ssh
而不是juju ssh
(使用 Juju ssh 密钥)。使身份验证工作的最简单方法是将您的 ssh 密钥从 Launchpad 导入到您的 Juju 部署中:
juju authorized-keys import $launchpad_user