无服务器:使用私有 Python 包作为依赖项



我有一个使用私有Git(在Github上(存储库的Python Serverless项目。

要求.txt文件如下所示:

itsdangerous==0.24
boto3>=1.7
git+ssh://git@github.com/company/repo.git#egg=my_alias

项目的配置主要看起来像这样

plugins:
- serverless-python-requirements
- serverless-wsgi
custom:
wsgi:
app: app.app
packRequirements: false
pythonRequirements:
dockerizePip: true
dockerSsh: true

当我使用此命令进行部署时:

sls deploy --aws-profile my_id --stage dev --region eu-west-1

我收到此错误:

Command "git clone -q ssh://git@github.com/company/repo.git /tmp/pip-install-a0_8bh5a/my_alias" failed with error code 128 in None

我做错了什么?我怀疑我为 Github 访问配置 SSH 密钥的方式或无服务器包的配置。

所以我设法解决这个问题的唯一方法是

  1. 配置不带密码的 SSH。请按照以下步骤操作。
  2. serverless.yml,我添加了以下内容:
custom:
wsgi:
app: app.app
packRequirements: false
pythonRequirements:
dockerizePip: true
dockerSsh: true
dockerSshSymlink: ~/.ssh

请注意,我添加了dockerSshSymlink来报告本地计算机上 ssh 文件的位置;~/.ssh.

  1. requirements.txt中,我像这样添加了我的私有依赖项:

    git+ssh://git@github.com/my_comp/my_repo.git#egg=MyRepo

所有作品。

虽然不推荐。您是否尝试过使用sudo sls deploy --aws-profile my_id --stage dev --region eu-west-1

此错误也可能通过使用错误的密码或 ssh 密钥来创建。

相关内容

  • 没有找到相关文章

最新更新