ู…ุณุชูˆุฏุน npm ู…ุญู„ูŠ (ุบูŠุฑ ู…ุชุตู„)


ู‚ุจู„ ุงู„ุชุงุฑูŠุฎ


ุนู†ุฏู…ุง ู‚ุฑุฑุช ุจูŠุนู‡ุง ุจุณุนุฑ ู…ุฑุชูุน ุŒ ุงู†ุชู‡ู‰ ุจูŠ ุงู„ุฃู…ุฑ ุนู†ุฏ ุตุงุญุจ ุงู„ุนู…ู„ ุŒ ุญูŠุซ ู„ุง ูŠูˆุฌุฏ ุงู„ุฅู†ุชุฑู†ุช ู„ูŠุณ ูู‚ุท ููŠ ุงู„ุฏุงุฆุฑุฉ ุงู„ุตู†ุงุนูŠุฉ ุŒ ูˆู„ูƒู† ุฃูŠุถู‹ุง ููŠ ุงู„ุจูƒุฑ (ุงู„ูˆุถุน ู„ูŠุณ ููŠ ุงู„ูˆุงู‚ุน ุบูŠุฑ ุดุงุฆุน ููŠ ูƒุซูŠุฑ ู…ู† ุงู„ู†ุงุณ ุŒ ุฅุฐุง ุฌุงุฒ ุงู„ุชุนุจูŠุฑ ุŒ "ุงู„ุดุฑูƒุงุช"). ูŠูˆุฌุฏ IE ููŠ ูˆุญุฏุฉ ุงู„ุชุญูƒู… ุŒ ุญูŠุซ ูŠู…ูƒู†ูƒ ุจุงู„ุทุจุน ุŒ ูŠุง ุนุฒูŠุฒูŠ ุงู„ู‚ุงุฑุฆ ุŒ ุฃู† ุชู†ุธุฑ ุฅู„ู‰ Habr ุฃูˆ stackoverflow ุŒ ู„ูƒู† ู„ูŠุณ ุฃูƒุซุฑ. ุจุดูƒู„ ุนุงู… ุŒ ุฃูƒุฑุฑ ุŒ ุงู„ู…ูˆู‚ู ู„ูŠุณ ุงุณุชุซู†ุงุฆูŠุงู‹ ุŒ ูŠู…ูƒู†ูƒ ุงู„ุนูŠุด ู…ุนู‡ - ู‡ู†ุง ู‡ูˆ ุฌู‡ุงุฒ ุงู„ูƒู…ุจูŠูˆุชุฑ ุงู„ู…ุญู…ูˆู„ ุงู„ุดุฎุตูŠ ุงู„ุฐูŠ ุฃูƒุชุจ ุนู„ูŠู‡ ุŒ ู‡ูˆ ุนู„ู‰ ุงู„ุทุงูˆู„ุฉ ... ู‡ู„ ุชู… ุฑูุนู‡ ู…ู† ู‚ุจู„ ุงู„ุนุฏูŠุฏ ู…ู† ุงู„ู…ูˆุธููŠู† ุŒ ู‡ู„ ู‡ูˆ ุฎู„ูˆูŠ ูƒู…ูˆุฏู… ุŒ ุจุดูƒู„ ุนุงู… ุŒ ุฅุฐุง ู„ู… ูŠูƒู† ุฏูุงุนู‹ุง / ุฃูŠ ุฎุฏู…ุงุช ู…ู† ุซู„ุงุซุฉ ุฃุญุฑู (ุฃู†ุตุญูƒ ู‡ู†ุง ุจุงู„ุฐู‡ุงุจ ุจุทุฑู‚ ุจุงู‡ุธุฉ ุงู„ุซู…ู† ุŒ ูƒู…ุง ุณุชูƒูˆู† ุจุถุน ูƒู„ู…ุงุช ุฃุฏู†ุงู‡) ูˆู„ูŠุณ ู‡ู†ุงูƒ ุฎุฏู…ุฉ ู…ุฑุงู‚ุจุฉ ุฑุงุฏูŠูˆ ุŒ ูุฃู†ุช ุญุฑ ููŠ ูุนู„ ุฃูŠ ุดูŠุก ุจุงุณุชุฎุฏุงู… ุงู„ูƒู…ุจูŠูˆุชุฑ ุงู„ู…ุญู…ูˆู„ ุงู„ุดุฎุตูŠ (ุถู…ู† :) ุงู„ู…ุณู…ูˆุญ ุจู‡) ุŒ ุนู„ู‰ ุงู„ุฃู‚ู„ ู‡ุฐุง ู…ุง ูŠุจุฏูˆ ู…ุนู†ุง. ู‡ู†ุงูƒ ุฅู…ูƒุงู†ูŠุฉ ู„ุณุญุจ ุงู„ู…ู„ูุงุช ุฅู„ู‰ ุจูŠุฆุฉ dev ุŒ ู„ูƒู†ู†ูŠ ููŠ ุงู„ุญู‚ูŠู‚ุฉ ู„ุง ุฃุญุจ ู‚ุฑุงุฑ ุงู„ุงุญุชูุงุธ ุจูˆุญุฏุงุช ุงู„ุนู‚ุฏุฉ ููŠ ู‚ุงุนุฏุฉ ุงู„ุดูุฑุฉ ูˆู‚ู…ุช ุจู…ู„ุก ุณูˆุงุนุฏูŠ (ุทูˆูŠุช ุณูˆุงุนุฏูŠ ุนุฏุฉ ู…ุฑุงุช ุญูˆู„ ุงู„ุงู†ุชู‚ุงู„ ู…ู† TFS ุฅู„ู‰ git ุŒ ูˆุญูˆู„ repug nuget ุงู„ู…ุญู„ูŠุฉ ุŒ ู„ูƒู† ู‡ุฐู‡ ู‚ุตุต ู…ู†ูุตู„ุฉ ุŒ ูƒู…ุง ู„ุง ุชุฎู„ูˆ ู…ู† ุงู„ุฏุฑุงู…ุง ุŒ ูˆู„ูƒู† ุนู†ู‡ุง ุจุทุฑูŠู‚ุฉ ู…ุง ููŠ ุงู„ู…ุฑุฉ ุงู„ู‚ุงุฏู…ุฉ). ู‡ู†ุงูƒ ุงู„ุนุฏูŠุฏ ู…ู† ุงู„ุญู„ูˆู„ ุงู„ู…ูƒู„ูุฉ ุฅู„ู‰ ุญุฏ ู…ุง ุŒ ูู…ู† ุงู„ู…ู…ูƒู† ุชู…ุงู…ู‹ุง ุฃู† ุฃุชู…ูƒู† ู…ู† ุงู„ู…ุถูŠ ู‚ุฏู…ู‹ุง ููŠ ุจุนุถ ุงู„ู…ุตู†ูˆุนุงุช ุงู„ูŠุฏูˆูŠุฉ ุŒ ูˆู„ูƒู† ุนู†ุฏู…ุง ุชุฎูŠู„ุช ูƒู… ุณูŠุณุชุบุฑู‚ ู‡ุฐุง ุงู„ุฃู…ุฑ ูˆุงู„ุฃู‡ู… ู…ู† ุฐู„ูƒ ุŒ ูƒู… ู…ู† ุงู„ูˆู‚ุช ุณูŠุชู‚ุฑุฑ ุŒ ูŠุชู… ุชู†ุณูŠู‚ู‡ ูˆุชู†ููŠุฐู‡ ุŒ ูˆู‚ุฏ ุชู‚ุฑุฑ ุงู„ุนู…ู„ ุจุซู…ู† ุจุฎุณ ูˆุจุบุถุจ.


ุฅุฎู„ุงุก ุงู„ู…ุณุฆูˆู„ูŠุฉ: ู†ุธุฑู‹ุง ู„ูˆุฌูˆุฏ ุจูŠุฆุฉ windows ุŒ ุฃุตู ุจุงู„ุชูุตูŠู„ ุชู…ุงู…ู‹ุง ุงู„ุนู…ู„ ููŠ ูˆุญุฏุฉ ุงู„ุชุญูƒู… ููŠ Windows ุŒ ูˆู…ุน ุฐู„ูƒ ุŒ ููŠ ุงู„ุฃุณุงุณ ุŒ ุณุชูƒูˆู† ุงู„ุงุฎุชู„ุงูุงุช ููŠ ุงู„ู†ู‡ุงูŠุฉ ุนู†ุฏู…ุง ุชุฑูŠุฏ ุฑูุน ุงู„ู†ุชูŠุฌุฉ ุงู„ู†ู‡ุงุฆูŠุฉ ูƒุฎุฏู…ุฉ / daemon.


ู„ูŠุณ ุชูˆู…ูŠ ุŒ ุตุฏูŠู‚ูƒ ุงู„ุญู…ูŠู… ุŒ ูƒูŠูุŸ


ููŠ ุงู„ุนู…ู„ ุงู„ู…ุนู†ูŠุฉ:


  • ุฌู‡ุงุฒ ูƒู…ุจูŠูˆุชุฑ ู…ุน ุงู„ูˆุตูˆู„ ุฅู„ู‰ ุงู„ุฅู†ุชุฑู†ุช - ู†ุณู…ูŠู‡ุง ุงู„ู…ุตุฏุฑ
  • ูƒู…ุจูŠูˆุชุฑ ุจุฏูˆู† ูˆุตูˆู„ ุŒ ุนู„ู‰ ุดุจูƒุฉ ุดุฑูƒุฉ - ุฃุทู„ู‚ ุนู„ูŠู‡ ุงุณู… ุงู„ุฌู‡ุงุฒ ุงู„ู…ุณุชู‡ุฏู

ูŠุฌุจ ุฃู† ูŠูƒูˆู† ู‡ู†ุงูƒ node.js ุนู„ู‰ ุงู„ู…ุตุฏุฑ ูˆุนู„ู‰ ุงู„ุฌู‡ุงุฒ ุงู„ู‡ุฏู (ุฃุณู‡ู„ ุทุฑูŠู‚ุฉ ู‡ูŠ ุฅุตุฏุงุฑ ูˆุงุญุฏ ุฃูˆ ุฅุตุฏุงุฑุงุช ู…ุดุงุจู‡ุฉ).


ุฃู†ุดุฆ ุจุงุจุง ุนู„ู‰ ุงู„ู…ุตุฏุฑ ุŒ ููŠ ู…ูƒุงู† ู…ุง ุŒ ูˆุงุชุตู„ ุจู‡ ุŒ ุนู„ู‰ ุณุจูŠู„ ุงู„ู…ุซุงู„ ุŒ verdaccio:


mkdir verdaccio cd verdaccio 

ุจุนุฏ ุชุซุจูŠุช Verdaccio ู…ุญู„ูŠู‹ุง ุŒ ูŠุนุฏ ู‡ุฐุง ุฃู…ุฑู‹ุง ู…ููŠุฏู‹ุง ุฌุฏู‹ุง ูŠุนุชู…ุฏ ุนู„ู‰ ู…ุดุฑูˆุน sinopia ุงู„ู‚ุฏูŠู…. ุงู‚ุฑุฃ ุงู„ู…ุฒูŠุฏ ู‡ู†ุง: https://verdaccio.org/ .


ุจุงุฎุชุตุงุฑ ุŒ ู‡ุฐุง ูˆูƒูŠู„ ู„ู€ npm ุŒ ูˆุงู„ุฐูŠ ูŠู…ูƒู†ู‡ ุงู„ุชุฎุฒูŠู† ุงู„ู…ุคู‚ุช. ุจุงู„ู†ุณุจุฉ ู„ู„ุนุฏูŠุฏ ู…ู† ู…ุณุชุฎุฏู…ูŠ ู‡ุฐู‡ ุงู„ุญุฒู…ุฉ ุŒ ูุฅู† ุงู„ูุฑุตุฉ ุงู„ุฑุฆูŠุณูŠุฉ ู‡ูŠ ุงู„ู‚ุฏุฑุฉ ุนู„ู‰ ุงู„ู†ุดุฑ ุจุดูƒู„ ุฎุงุต ุŒ ูˆุญุงู„ุชูŠ ู…ุฎุชู„ูุฉ ู†ูˆุนู‹ุง ู…ุง ุŒ ูˆุฃุฑุฏุช ุชุฎุฒูŠู† ูƒู„ ู…ุง ุฃุญุชุงุฌู‡ ู„ู„ุนู…ู„ ูˆุฃู‚ู„ ู‚ู„ูŠู„ุงู‹ ุŒ ุซู… ู†ู‚ู„ู‡ุง ูƒู„ู‡ุง ุฅู„ู‰ ุงู„ุฌู‡ุงุฒ ุงู„ู…ุณุชู‡ุฏู. ุจุงู„ู†ุธุฑ ุฅู„ู‰ ุงู„ู…ุณุชู‚ุจู„ ุŒ ุฃู‚ูˆู„ ุฅู† ูƒู„ ุดูŠุก ุณุงุฑ ุจุฏูˆู† ุฃู„ู… ุŒ ุจุงุณุชุซู†ุงุก ู†ู‚ู„ ุงู„ุนู‚ุฏุฉ. ู„ู‚ุฏ ูƒุงู† ุงู„ุณุจุจ ุงู„ุฑุฆูŠุณูŠ ูˆุฑุงุก ู‚ุถุงุฆู‡ุง ูŠูˆู…ู‹ุง ูˆู†ุตู ุงู„ูŠูˆู… (ู‡ู†ุงูƒ ุฌุฒุก ุฃุตู„ูŠ ูŠุชู… ุชุญู…ูŠู„ู‡ ู…ู† ุฌูŠุซุจ ุฃุซู†ุงุก ุนู…ู„ูŠุฉ ุงู„ุชุซุจูŠุช ุฃูˆ ุณูŠุฐู‡ุจ ุฅู„ู‰ ุงู„ุบุฌุฑ ุŒ ุฅุฐุง ู„ู… ูŠู†ุฌุญ ุงู„ุฃู…ุฑ ูุฌุฃุฉ - ููƒุฑ ููŠ ุงู„ุฃู…ุฑ ุŒ ุณูŠุชู… ุจู†ุงุคู‡ ุนู„ู‰ ูƒู„ ุขู„ุฉ ุชุทูˆูŠุฑ ู…ุญู„ูŠุฉ ุŒ ูˆู‡ูˆ ุฃู…ุฑ ุบูŠุฑ ู…ุฑูŠุญ ุชู…ุงู…ู‹ุง) ุŒ ู‚ุตุฉ ุฃุฎุฑู‰ ุฃูŠุถุง.


ูƒู„ ุดูŠุก ุจุณูŠุท ู‡ู†ุง:


 npm i verdaccio 

ุจุดูƒู„ ุนุงู… ุŒ ูŠูˆุตูŠ ุงู„ุฏู„ูŠู„ ุจุงู„ุชุซุจูŠุช ุนู„ู‰ ู…ุณุชูˆู‰ ุงู„ุนุงู„ู… ุŒ ู„ูƒู† ููŠ ุงู„ูˆุงู‚ุน ู‡ุฐุง ู„ูŠุณ ุถุฑูˆุฑูŠู‹ุง ุนู„ู‰ ุงู„ุฅุทู„ุงู‚ ุŒ ุนู„ุงูˆุฉ ุนู„ู‰ ุฐู„ูƒ ุŒ ู†ุฑูŠุฏ ุชูˆุทูŠู† ูƒู„ ู‡ุฐุง ุงู„ุฎุฒูŠ ููŠ ู…ุฌู„ุฏ ูˆุงุญุฏ ุŒ ุจุญูŠุซ ูŠู…ูƒู† ู†ุณุฎู‡ ู„ุงุญู‚ู‹ุง ุจุดูƒู„ ู…ู„ุงุฆู…. ู„ุฃู† ุฐู„ูƒ ...


ู‚ู… ุจุชุดุบูŠู„ ุงู„ุญุฒู…ุฉ ุŒ ูˆุณูˆู ูŠุฎู„ู‚ ุงู„ุชุฎุฒูŠู† ูˆุงู„ุชูƒูˆูŠู† ุงู„ุงูุชุฑุงุถูŠ:


 .\node_modules\.bin\verdaccio.cmd 


ุซู… ุฃุฎุจุฑู†ุง ุงู„ุฌู…ูŠุน ูู‚ุท ุฃูŠู† ู‡ูˆ ุงู„ุชูƒูˆูŠู† ุŒ ุนู„ู‰ ุฃูŠ ู…ู†ูุฐ ู†ุชุนู„ู‚ ุจู‡.


ู…ู† ุญูŠุซ ุงู„ู…ุจุฏุฃ ุŒ ูŠู…ูƒู†ูƒ ุงู„ุงู†ุชู‚ุงู„ ุจุงู„ูุนู„ ุฅู„ู‰ ุงู„ุนู†ูˆุงู† ุงู„ู…ุญุฏุฏ ูˆุฑุคูŠุฉ ุดูŠุก ู…ุซู„ ู‡ุฐุง:



ุงู„ุขู† ู†ุญู† ุจุญุงุฌุฉ ุฅู„ู‰ ุงู„ู‚ูŠุงู… ุจุจุนุถ ุงู„ุฃุดูŠุงุก:


  • ู…ุณุญ ุฐุงูƒุฑุฉ ุงู„ุชุฎุฒูŠู† ุงู„ู…ุคู‚ุช npm ( ู…ุฒูŠุฏ ู…ู† ุงู„ุชูุงุตูŠู„ ู‡ู†ุง ุŒ ุจุงุฎุชุตุงุฑ ุŒ ู‚ุชู„ ู…ุญุชูˆูŠุงุช ูช AppDataูช / npm-cache )


  • ุฌูˆู„ุฉ


     npm set registry http://localhost:4873/ 

  • ุงู†ุณุฎ config.yaml ุฅู„ู‰ ู…ุฌู„ุฏ verdaccio ุงู„ู…ุฑูŠุญ ุงู„ุฎุงุต ุจู†ุง


  • ุชุฃูƒุฏ ู…ู† ุฃู† ู‚ุณู… ุงู„ูˆุตู„ุงุช ุงู„ุตุงุนุฏุฉ ููŠ ู‡ุฐุง ุงู„ู…ู„ู ูŠุจุฏูˆ ูƒู…ุง ูŠู„ูŠ:


     uplinks: npmjs: url: https://registry.npmjs.org/ cache: true 

  • ููŠ ู†ู‡ุงูŠุฉ ุงู„ุชูƒูˆูŠู† ุฃุถู:


     listen: - 0.0.0.0:4873 

    ุฅุฐุง ู„ู… ูŠุชู… ุฐู„ูƒ ุŒ ูู„ู† ุชุชู…ูƒู† ู…ู† ุงู„ูˆุตูˆู„ ุฅู„ู‰ ุงู„ุนู†ูˆุงู† ุงู„ู…ุญู„ูŠ ู„ุงุญู‚ู‹ุง ุนู„ู‰ ุงู„ุฌู‡ุงุฒ ุงู„ู‡ุฏู.


  • ููŠ ุงู„ูˆุงู‚ุน ู†ุญู† ู…ุณุชุนุฏูˆู† ุŒ ูˆุงู„ุขู† ุณุชุณุชู‚ุฑ ุฌู…ูŠุน ุงู„ุญุฒู… ุงู„ุชูŠ ู†ุฃุฎุฐู‡ุง ู…ู† ุฎู„ุงู„ ุชุซุจูŠุช npm. / ุงู„ุชุฎุฒูŠู† ุŒ ูˆู‡ูˆ ู…ุง ู†ุญุชุงุฌ ุฅู„ูŠู‡. ู†ู‚ูˆู… ุจุงุณุชุนุงุฏุฉ ุงู„ู…ุดุฑูˆุน ุงู„ู…ุณุชู‡ุฏู ุŒ ุจุงู„ุฅุถุงูุฉ ุฅู„ู‰ ุฐู„ูƒ:



 npm i node-windows 

ู‡ุฐุง ูƒู„ ุดูŠุก ุŒ ุจุนุฏ ุฐู„ูƒ ู†ุฃุฎุฐ ุงู„ู…ุฌู„ุฏ ูˆู†ุฑุณู„ู‡ ุฅู„ู‰ ุงู„ุฌู‡ุงุฒ ุงู„ู…ุณุชู‡ุฏู ุจุฃูŠ ุทุฑูŠู‚ุฉ ู…ู…ูƒู†ุฉ ู„ูƒ (ู‡ู†ุงูƒ ุญุงุฌุฉ ุฅู„ู‰ ุญู‚ูˆู‚ ุงู„ู…ุณุคูˆู„ ู‡ู†ุงูƒ ุŒ ู†ุนู…). ูŠู…ูƒู†ูƒ ุจุงู„ูุนู„ ู‡ู†ุงูƒ ุŒ ูŠู…ูƒู†ูƒ ุฅู†ุดุงุก ู…ู„ู ุนู„ู‰ ุงู„ููˆุฑ ููŠ ุฌุฐุฑ ู…ุฌู„ุฏ installservice.js:


 var Service = require('node-windows').Service; var svc = new Service({ name: 'VerdaccioSvc', description: 'Verdaccio - npm local repository', script: ' <   >\\node_modules\\verdaccio\\bin\\verdaccio', nodeOptions: [] }); svc.on('install', function() {svc.start();}); svc.install(); 

ู†ุทู„ู‚:


 node installservice.js 

ุงุณุชู…ุชุน!


ุจุดูƒู„ ุนุงู… ุŒ ุชู…ูƒู†ุง ู…ู† ุงู„ุญุตูˆู„ ุนู„ู‰ ู…ุณุชูˆุฏุน ู…ุญู„ูŠ ู…ุน ุงู„ู‚ู„ูŠู„ ู…ู† ุงู„ุฏู…ุงุก ุŒ ูˆุงู„ุจู†ุงุก ูŠุจู†ูŠ ูˆุงู„ู…ุทูˆุฑูŠู† ุชุทูˆูŠุฑ ูƒู„ ุดูŠุก ููŠ ู‡ุฐุง ุงู„ุนุงู„ู… ููŠ ุฃู…ุงูƒู†ู‡ู…. ูˆู†ุนู… ุŒ ูŠุฃุชูŠ ุงู„ุชุฒุงู…ู† ุงู„ุชุงู„ูŠ ู„ู†ุณุฎ ู…ุญุชูˆูŠุงุช ./storage .


ูƒู„ ู‡ุฐุง ุชู… ุชุฏูˆูŠู†ู‡ ุฌุฒุฆูŠู‹ุง ุนู„ู‰ ุดูƒู„ ู…ุฐูƒุฑุฉ ุŒ ูˆุฌุฒุฆูŠู‹ุง ู„ุชูˆููŠุฑ ุงู„ูˆู‚ุช ู„ูƒ (ู…ู† ุบูŠุฑ ุงู„ู…ุฑุฌุญ ุฃู† ุชุญู„ ุงู„ู…ู‡ู…ุฉ ูƒุซูŠุฑู‹ุง) ุŒ ู„ุฃู†ู‡ ููŠ ุญุงู„ุฉ ุนุฏู… ุธู‡ูˆุฑ ุฒู‡ุฑุฉ ุญุฌุฑูŠุฉ ุŒ ู„ุง ุชุชุฑุฏุฏ ููŠ ุงู„ูƒุชุงุจุฉ ุŒ ูู‡ู†ุงูƒ ูุฑุตุฉ ุฃู†ุณู‰ ุฃู† ุฃุตู ู†ูˆุนู‹ุง ู…ุง ุงู„ุชูุงุตูŠู„ ุŒ ูˆุฅุฐุง ู„ู… ุฃู†ุณ ุŒ ูุฌุฃุฉ ุŒ ู…ู…ุง ูƒู†ุช ุณุชุณุงุนุฏ ...

Source: https://habr.com/ru/post/ar453614/


All Articles