Nous avons un dépôt npm privé basé sur Sinopia
Que dois-je définir dans package.json
que certains packages seront installés à partir de Synopia plutôt qu'à partir du référentiel global npm?
Si je l'installe à partir de la ligne de commande, je peux exécuter: npm install <package_name> --registry <http://<server:port>
P.S. essayé de google et regardé dans la documentation officielle de NPM mais n'ont rien trouvé.
L'une des méthodes que je connais est par .npmrc Vous pouvez également utiliser .npmrc également à l'intérieur du projet
définir une configuration comme celle-ci
registry = http://10.197.142.28:8081/repository/npm-internal/
init.author.name = Himanshu sharma
init.author.email = [email protected]
init.author.url = http://blog.example.com
# an email is required to publish npm packages
[email protected]
always-auth=true
_auth=YWRtaW46YWRtaW4xMjM=
l'auth peut être généré par nom d'utilisateur: mot de passe echo -n 'admin: admin123' | openssl base64
sortie YWRtaW46YWRtaW4xMjM =
Le point entier de la sinopie est un registry
privé et un proxy
en même temps. Vous pouvez utiliser liaisons montantes installer tous vos packages à partir d'un point d'entrée de registre. Sinopia est en mesure d'acheminer vers n'importe quel registre si le stockage local n'est pas en mesure de résoudre la dépendance. Par défaut, il pointe vers npmjs
.
Donc, si vous définissez votre configuration comme
# a list of other known repositories we can talk to
uplinks:
npmjs:
url: https://registry.npmjs.org/
packages:
'@*/*':
# scoped packages
access: $all
publish: $authenticated
proxy: npmjs
'**':
# allow all users (including non-authenticated users) to read and
# publish all packages
#
# you can specify usernames/groupnames (depending on your auth plugin)
# and three keywords: "$all", "$anonymous", "$authenticated"
access: $all
# allow all known users to publish packages
# (anyone can register by default, remember?)
publish: $authenticated
# if package is not available locally, proxy requests to 'npmjs' registry
proxy: npmjs
Vous devriez pouvoir résoudre toutes vos dépendances indépendamment de la source de chacune d'entre elles
btw: sinopia
n'est plus maintenu.