Satis、Bitbucket 和 SSH

Satis, Bitbucket and SSH

我在我们的一台远程服务器上设置了一个 Satis 存储库,允许访问我们在 Bitbucket 上托管的私有包。我在该服务器上创建了一个 SSH 密钥对,并将 public 密钥添加到我们的 Bitbucket 用户。以这种方式构建 Satis 效果很好。

现在,当我想在任何托管应用程序的远程服务器上执行 composer install 时,我没有正确的权限,除非我在该服务器上创建密钥对并添加其 public Bitbucket 的关键。我不想为每个项目(对于环境是 3 次)执行此操作,最终在我们的 Bitbucket 帐户中有将近 100 个 public 密钥。

如何避免这种情况? 有没有办法让所有包都镜像到 Satis 存储库,所以当 composer installing 包可以从 Satis 存储库中获取而无需使用 public 键?

是的,您必须在 Satis 服务器上创建存档。如果启用,对于找到的每个标签,Satis 将创建一个 ZIP 文件并将其放入您配置的目录中。

这也将加快安装速度,因为 ZIP 下载后将存储在本地。请注意,仅当软件包尚未安装在供应商文件夹中时才会使用 ZIP。目前,我假设您使用 Git 克隆了所有包,并且 Composer 不会更改此设置 - 获取更新然后签出标签比删除存储库和下载 ZIP 更快。如果你还在使用Git,你必须有密钥。

一旦您更改了 Satis 配置,删除供应商文件夹并在之后更新应该会下载 ZIP。