【问题标题】:How should I point Meteor to a private repository for Atmosphere packages?我应该如何将 Meteor 指向 Atmosphere 包的私有存储库?
【发布时间】:2018-02-22 21:26:21
【问题描述】:

我被要求将流星应用程序部署到无法访问互联网的构建服务器。构建服务器可以从本地网络服务器上的私有 JFrog Artifactory 存储库下载 Meteor、Npm 包等。流星应用程序还具有 Atmosphere 包依赖项。如何将 Meteor 配置为指向 Atmosphere 包的 Artifactory(或任何私有仓库),或以其他方式解决此问题?

【问题讨论】:

  • 对于投反对票的人,请礼貌地说明您这样做的原因。

标签: meteor artifactory atmosphere.js


【解决方案1】:

您只能在构建/部署时访问 Atmosphere 或 github。所以通常如果你使用mup部署到你的服务器上,它不在线也没关系。

如果它必须由构建服务器构建,那么该构建服务器将需要网络访问权限,除非您想为其配置本地存储库以从中获取文件。

这里有一些地方可以让您进一步了解如何操作:

https://www.npmjs.com/package/sinopia

can you host a private repository for your organization to use with npm?

https://addyosmani.com/blog/using-npm-offline/

Local NPM/Atmosphere package repositories for Meteor applications without internet access

【讨论】:

  • 您好,感谢您的回复。你是对的,这个问题与没有互联网访问的服务器上的构建时间有关。它拥有的唯一访问权限是私有 Artifactory 存储库。 Artifactory 与 NPM 集成得很好。但是,它不处理 Atmosphere 包。您的前三个链接与 NPM 有关,这不是问题。您的最后一个链接有一个答案,其中说明了一种解决方法,涉及将 .meteor 文件夹复制到构建服务器。这对我来说不是一个可接受的解决方案。
  • 他本可以回答“您可以在人工制品和氛围之间建立自己的融合”。从技术上讲,这整个问题对 SO 来说都是题外话,可能应该是服务器故障。
【解决方案2】:

目前我面临同样的问题,这就是我所做的:

  1. 在可以访问互联网的机器上构建流星应用程序,这样它就可以正常构建。
  2. 创建一个包含所有依赖项的 .meteor 文件夹的 tarball。
  3. 将 tarball 上传到您的构建服务器可访问的位置(可能在 Artifactory 中?)。
  4. 在构建服务器中,下载 tarball,解压缩并在您想要构建应用程序时替换它。

如果包已经可用,Meteor 将不会尝试从 Atmosphere 下载包。不是最好的解决方案,尤其是因为如果您的依赖项发生变化,您将需要更新 tarball,但是它可以工作。

【讨论】:

    猜你喜欢
    • 2023-03-13
    • 1970-01-01
    • 1970-01-01
    • 2022-01-19
    • 1970-01-01
    • 2015-10-07
    • 2015-08-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多