因为公司最近在更换服务器,所以需要将私服上的组件库迁移,运维小哥给了一个新的机器,我把整理下来的在linux上如何搭建私服环境的完整步骤,以及遇到的问题都罗列出来,供需要的朋友参考
1.安装部署私服环境
以下步骤是一个干净的环境,如果已经存在可直接跳过进行后面的步骤
1.1 安装wget
是否存在检查:wget -V
yum install -y wget
1.2 安装node
是否存在检查:node -v 、npm -v
https://nodejs.org/dist这个网址可以选择需要安装的node的版本,比我是在linux上使用16.16.0版本的node。我下载的地址就是相应的来源地址,https://nodejs.org/dist/v16.16.0/node-v16.16.0-linux-x64.tar.xz,如下图:
1.2.1 确定node下载位置
题外话补充:
pwd:查看当前路径
ls:查看当前路径下的所以文件
这个根据使用者自行决定,假设我想下载的地址是 /aa/bb
那么我们进入这个目录cd /aa/bb
1.2.2 下载node包
题外话:如果以后的所有命令执行失败,且原因是没有权限,解决方案是在命令之前加上sudo
wget https://nodejs.org/dist/v16.16.0/node-v16.16.0-linux-x64.tar.xz
下载好之后,执行 ls 命令,会看到目录下多了一个node-v16.16.0-linux-x64.tar.xz文件
1.2.3 解压node包
tar -xvf node-v12.18.2-linux-x64.tar.xz
完事,目录下会有一个node-v12.18.2-linux-x64文件夹
1.2.4 重命名文件夹
为了方便后续维护使用等我们将解压之后的包进行重命名
mv node-v12.18.2-linux-x64 nodejs
完事,发现解压包已经改名为nodejs了,记住现在nodejs所在路径是/aa/bb/nodejs
1.2.5 软连接
软连接的目的是将node命令和npm命令在全局生效
ln -s /aa/bb/nodejs/bin/node /usr/local/bin/
ln -s /aa/bb/nodejs/bin/npm /usr/local/bin/
该机器下,任意位置执行node -v和npm -v成功即安装步骤成功啦~
1.3 安装verdaccio
1.3.1 安装
确定安装位置,假设还在/aa/bb目录下
npm install verdaccio -g
ln -s /aa/bb/nodejs/bin/verdaccio /usr/local/bin/
任意位置执行verdaccio,出现下图,表示成功安装verdaccio了
1.3.2 修改config.yaml配置
上面我们执行了verdaccio命令之后,会告诉你一个config.yaml配置文件所在的目录
题外话:需要有vim编辑相关尝试哟,可以自行百度
vim /xx/xx/config.yaml
进去时候增加一行配置,verdaccio默认是4873,我没有去动这个端口
listen: 0.0.0.0:4873
意思是外网访问机器ip:4873地址都可以,我的服务器地址就是:10.XXX.XX.XX:4873/ 隐私就不完全展示啦~
出现下图表示成功:
1.3.3 问题
通过verdaccio命令启动的这个服务,在关闭进程之后,这个页面也就没有办法访问了。解决这个的方式就是使用pm2管理我们的node进程
1.4 pm2管理verdaccio
1.4.1 安装pm2
假设目录:/aa/bb/
npm i pm2 -g
ln -s /aa/bb/nodejs/bin/pm2 /usr/local/bin/
pm2 -v检查是否安装完毕
1.4.2 pm2管理verdaccio
pm2 start verdaccio
启动成功一样访问:10.XXX.XX.XX:4873/ 关闭进程,一样是可以访问的
如果不能访问:pm2 show verdaccio查看进程的相关信息,我之前遇见的是里面的信息script path不再我们设置的 /usr/local/bin里面
解决方案:
//先关闭之前的进程
pm2 stop verdaccio
//再开启
pm2 start `which verdaccio`
1.4.3 pm2相关命令
pm2 start XX //启动相关进程
pm2 stop XX //停止相关进程
pm2 list //pm2管理的所有进程
pm2 show <name | id> //展示某个进程的信息
pm2 logs //展示所有应用程序日志
还有很多自行官网学习吧~
以上就是整个verdaccio私服环境部署了,欢迎讨论