当前位置: 首页 > 后端技术 > Node.js

在linuxUbuntu上创建npm私有库

时间:2023-04-03 10:13:30 Node.js

我们的服务器环境是linuxUbuntu,这篇文章主要是讲如何在linuxUbuntu环境下搭建我们的npm私有库。安装Nodejs我们需要使用npm命令来安装verdaccio,所以首先我们要有一个node环境。Step1-添加Node.jsPPA$sudoapt-getinstallsoftware-properties-common$curl-sLhttps://deb.nodesource.com/setup_12.x|sudo-Ebash-Step2–在Ubuntu上安装Node.js$sudoapt-getinstallnodejsStep3–检查Node.js和NPM版本安装node.js后验证并检查安装的版本。$node-vv12.2.0另外,检查npm版本$npm-vv6.9.0安装verdaccio$sudonpminstall-gverdaccio--unsafe-perm=true--allow-root添加--unsafe-perm=true--allow-root选项防止gypERR!permissiondeniedpermission错误如下:如果我们安装成功,我们可以看到结果/usr/bin/verdaccio->/usr/lib/node_modules/verdaccio/bin/verdaccio+verdaccio@3.11.7Startverdaccio$verdaccioThe结果如下:warn---configfile-/home/npm/.config/verdaccio/config.yamlwarn---Pluginsuccessfulloaded:htpasswdwarn---Pluginsuccessfulloaded:auditwarn---httpaddress-http://localhost:4873/-verdaccio/3.11.7从控制台的输出我们可以看到verdaccio的配置文件路径在/home/npm/.config/verdaccio/config.yaml默认访问地址为http://localhost:4873/修改configaccess为config.yaml文件$cd/home/npm/.config/verdaccio/$lsconfig.yamlhtpasswdstorage$vimconfig.yaml在配置文件config.yaml末尾添加代码:#你可以指定监听地址(或者只是一个端口)listen:0.0.0.0:8080查看详细的verdaccioprofile文档用verdaccio命令启动verdaccio$verdaccio访问一个内置的私有仓库打开http://[ipaddress]:8080在浏览器中,如果我t可以正常访问,说明构建成功。我们的ip地址是104.43.246.39,打开http://104.43.246.39:8080,可以看到界面如下图:注意:给云服务器添加安全组,并开放8080端口号。如果不加端口安全组,浏览器无法访问http://104.43.246.39:8080。用pm2启动verdaccio保证进程一直开启我们也可以用pm2启动verdaccio保证进程正常始终打开。我们可以获得更多详细信息。安装pm2$npminstall-gpm2--unsafe-perm=true--allow-root使用pm2$启动verdacciopm2使用pm2$启动verdacciostopverdacciopm2停止verdaccio让verdaccio在后台运行如果你当终端变为非活动状态并且进程终止时,通过puttySSH连接到linux服务器。所以我们需要在后台运行verdaccio.runverdaccioinbackground$screen$verdacciostoptheprocessinbackground$screenlsTherearescreenson:16129.pts-0.VM-NPM(05/15/1909:31:04)(Detached)15809.pts-2.VM-NPM(05/15/1909:28:43)(Detached)$screen-r16129.pts-0.VM-NPMnpm@VM-NPM:/var/www/app$nodeserver.jsServerstartedonlocalhost:8080;pressCtrl-Ctoterminate...!Clientpublishesnpmtoprivaterepository在服务器上使用verdaccio搭建私有仓库后,接下来就是如何在本地上传npm包到私有仓库服务器了,需要注册或者登录你的帐户。如果我们还没有账号,可以输入命令npmadduser--registryhttp://104.43.246.39:8080然后依次输入用户名来创建。如果您已经有一个帐户,您可以通过输入命令npmlogin--registryhttp://104.43.246.39:8080然后输入用户名和密码来登录。然后进入代码目录我们需要上传,执行命令发布。发布npm包之前必须先注册一个账号。npmadduser--registryhttp://104.43.246.39:8080用户名:jane密码:邮箱:(这个是公开的)924902324@qq.comLoggedinasjaneonhttp://104.43.246.39:8080。输出Loggedinasjaneonhttp://104.43.246.39:8080.,表示npm账号jane成功登录http://104.43。246.39:8080privaterepository.刚得到一个工程名叫'example',里面什么都没有,npminit新建一个package.json.npminitnpmpublish--registryhttp://104.43.246.39:8080npm成功发布到privaterepository在浏览器中刷新http://104.43.246.39:8080页面,如图:如何使用私有仓库npmpackageStep1-更改npmregistry地址npmsetregistryhttp://104.43.246.39:8080Step2-安装packagenpm安装@sfc/示例