2016-11-28 17 views
7

私の環境で糸0.17.9をセットアップしようとしていますが、レジストリに問題があります。私たちは現在、内部ネットワーク(Sinopia)上の2つのレジストリ、公式のnpmjsおよび独自のレジストリを使用しています。糸で複数のnpmレジストリを使用するにはどうすればよいですか?

問題は、内部ツールを使用して、パッケージを--registryフラグでnpm install経由でプルすることです。 yarn addに--registryオプションがなく、カスタムレジストリをnpmjsへのフォールバックでグローバルに設定できません。私は.npmrcを試しましたが、プロジェクトのnpm/yarnのレジストリを1つだけ設定します。 .yarnrcは機能していないと思われます。.npmrc

2つのレジストリを指定する方法はありますか?最初のレジストリでパッケージが見つからない場合は2番目のレジストリにフォールバックしますか?または、パッケージごとに異なるnpmレジストリを指定しますか?

答えて

3

糸は、NPMとしてサポート--registryフラグを持っていませんが、あなたの.yarnrcは、それが使用して〜/ .yarnrcからコピーすることができ、無視されている場合は、.yarnrc

であなたのレジストリを設定することができます。

yarn config set registry http://registry.com/registry// 
+2

問題は、内部サーバー用とregistry.npmjs.org用の2つのレジストリを設定する必要があることです。私は糸の設定を列挙しようとしました。レジストリは私たちの内部サーバ上に設定されており、レジストリはnpmjs.orgというnpm情報の下に設定されています。しかし、私は 'yarn add internalpackage'糸がnpmjs.orgを試してみると失敗します。 – kraklin

+0

@kraklin Gemfuryのようなホストされたリポジトリは、プライベートスペースに存在しないreposのすべてのリクエストを 'https:// registry.npmjs.org /'にプロキシすることで解決します。あなたも同様のことができるでしょう – hampusohlsson

+0

@hamohlはい、私たちはSinopiaで試してみましたが、残念ながらこの設定は私たちのネットワークでは機能しませんでしたので、プロキシオプションをオフにして、2つのレジストリでカスタムセットアップを行いました。 – kraklin

0

@kraklin @kraklinプロジェクトのルートに.yarnrcファイルを使用して、この行をそのファイルに書き込むことができます。

レジストリ "https://registry.npmjs.org/"

これは、プロジェクト固有のリポジ​​トリとして機能します。私はこれを使ってこれをチェックしてください。

関連する問題