2

我目前工作的公司有非常严格的安全政策,不允许 Composer 访问公司内网之外的任何主机。每个开发人员都有自己的 VPS 用于在预装了 php、composer 和其他开发工具的内部云中进行开发,但是没有从 VPS 到 Internet 的路由。工作站的互联网访问受限,仅用于电子邮件和浏览互联网。我们设法让 Symfony 和 composer 与 Satis 一起在内部服务器上可用。由于严格的包白名单标准,有时管理 Satis 静态依赖项很烦人,但它通常工作......好吧,直到 Symfony Flex 出现并且http://symfony.sh对我们的内部工作站和开发环境不可用。

那么有没有办法在本地运行弹性服务器或以某种方式重用本地 Satis 存储库来提供弹性配方?

4

2 回答 2

1

如果您无法访问 symfony.sh,那么您使用 symfony flex 很不走运。flex 没有与 satis 等价的东西。

仅当您的存储库位于 github.com 上时,私有存储库才可用。

但是 flex 完全不是强制性的,你仍然可以安装 bundles,并寻找它们的配置。

于 2018-02-15T10:16:55.037 回答
1

在撰写此答案时,Symfony 尚未正式开源 symfony.sh 源,因此通过 Flex 作曲家插件访问 Flex 配方的唯一方法是启用到 symfony.sh 的防火墙路由。

但是,如果这不符合您的安全策略,另一种选择是使用反向工程 Flex 服务器https://github.com/aurimasniekis/flex-server并为其做出贡献,该服务器可以托管在对 GitHub 具有有限访问权限的单独服务器上. 然后应该通过执行以下操作配置 composer.json 以使用该特定的 flex 服务器:

composer config extra.symfony.endpoint FLEX_SERVER_URL

Flex 作为作曲家插件是开源的,因此可以相对容易地模拟或重新创建其背后的协议。

第三个选项是根本不使用 Flex,继续安装捆绑包,其中包含许多配置、安装和启用依赖项的样板步骤,就像我们在 Symfony4 之前所做的那样。

于 2018-02-19T06:20:13.707 回答