一、简介
Node.js 就是运行在服务端的 JavaScript。Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。Node.js 的包管理器 npm,是全球最大的开源库生态系统。在Linux下安装包相对来说比较复杂,但大家也不用害怕,只要认真学习,任何东西没有想象中的那么难,本文以Centos7为例,在参考中进行讲述,本文推荐用第四种安装方式。
二、工具
- Xftp5 Xshell5(有远程仓库的就不需要Xftp5 直接推到你的服务器)
三、下载安装(CentOS 7)
CentOS 7涵盖四种安装方法源码安装、EPEL(Extra Packages for Enterprise Linux)安装、已编译版本安装和通过NVM(Node version manager)安装,前两种方法基本上都是Linux通用的安装方式,前面两种可以安装最新版本,后面两种方便管理,小伙伴们可以通过自己的习惯自由选择,下载的软件一般安装/usr/local/下面。
1、源码安装
在安装前,我们先在usr/local/目录下创建node文件夹用于存放源码,源码安装,是下载源码包,要进行编译和安装,编译过程,可以进行参数设定。这种方式灵活性比较大,版本/参数可以自己选择。
- 去官网下载对应的安装包(http://nodejs.cn/download/)
- 下载解压 (一般下载的是.gz的文件),也可以在https://nodejs.org/dist/目录下找见对应版本,使用wget下载,如果没有wget,运行yum install wget -y安装后下载,本文以node-v10.19.0.tar.xz为例进行安装。命令如下:
//下载 $ wget https://nodejs.org/dist/v10.19.0/node-v10.19.0.tar.xz //解压 $ xz -d node-v10.19.0.tar.xztar -xvf node-v10.19.0.tar.xz 或 //下载 $ wget http://nodejs.org/dist/v0.10.30/node-v0.10.30.tar.gz //解压 $ tar xzvf node-v*
安装如图:
- 进入解压后的目录,进行编译安装,如果无法安装,运行 sudo yum install gcc gcc-c++ 命令如下:
cd node-v* //换成对应的文件目录 ./configure make sudo make install
- 测试
$ node -v $ npm -v
2、使用EPEL安装
- 查看系统版本
$ uname -a //说明:x86_64表示64位系统, i686 i386表示32位系统
- 下载EPEL
下载下载rpm文件(https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/)
$ sudo rpm -ivh https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/entr-4.4-1.el7.x86_64.rpm
- 安装完成执行
//https://github.com/nodesource/distributions //更新node.js各版本yum源 //Node.js v8.x安装命令 #curl --silent --location https://rpm.nodesource.com/setup_8.x | bash - //Node.js v7.x安装命令 #curl --silent --location https://rpm.nodesource.com/setup_7.x | bash - //Node.js v6.x安装命令 #curl --silent --location https://rpm.nodesource.com/setup_6.x | bash - //Node.js v5.x安装命令 #curl --silent --location https://rpm.nodesource.com/setup_5.x | bash - //yum安装node.js yum install -y nodejs
- 测试
$ node -v $ npm -v
3、使用已编译版本安装
- 下载已编译版本
$ wget http://nodejs.org/dist/v0.10.30/node-v0.10.30-linux-x64.tar.gz
- 解压
$ sudo tar --strip-components 1 -xzvf node-v* -C /usr/local/node
- 测试
$ node -v $ npm -v
4、使用NVM安装
NVM(Node version manager)顾名思义,就是Node.js的版本管理软件,可以轻松的在Node.js各个版本间切换,项目源码GitHub安装新版本
- 安装命令
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash 或 curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash
- 或者下载并安装NVM脚本安装
curl https://raw.githubusercontent.com/creationix/nvm/v0.13.1/install.sh | bashsource ~/.bash_profile
- 安装后重启shell通过以下命令查看nvm版本
$ nvm --version
- 列出所需要版本
$ nvm list-remote
- 安装对应的版本
$ nvm install v13.10.1
- 查看已安装的版本
$ nvm list
- 切换版本
$ nvm use v13.10.1
- 设置为默认版本
$ nvm alias default v13.10.1
- 查看版本
$ node --version 简写 node-v $ npm --version 简写 npm -v
5、yum安装
- 第一步
curl --silent --location https://rpm.nodesource.com/setup_10.x | sudo bash
- 第二步
$ sudo yum -y install nodejs
如果以上步骤不能安装 最新版 node,执行以下命令后再执行第二步:
$ sudo yum clean all
如果存在多个 nodesoucre,执行以下命令删除,然后重新执行第一第二步:
$ sudo rm -fv /etc/yum.repos.d/nodesource*
四、npm的安装和使用
npm在安装node时会同步安装,cnpm功能和npm一样,但因为使用的仓库是国内的淘宝镜像,所以速度更快,目前市面上常用的镜像有以下几种:
https://registry.npmis.org/ //npm的仓库,在国外 http://registry.npm.taobao.org/ //npm仓库的淘宝镜像 https://registry.yarnpkg.com //yarn的仓库地址
- 设置淘宝镜像
$ npm config set registry https://registry.npm.taobao.org $ npm config set disturl https://npm.taobao.org/dist
- 安装使用淘宝镜像
$ npm install -g cnpm --registry=https://registry.npm.taobao.org
- 删除淘宝镜像
$ npm config edit //找见上面注册的两行,执行下面删除命令 $ npm config delete registry $ npm config delete disturl
- 还原默认
$ npm config set registry https://registry.npmjs.org/
- 验证是否成功
$ npm config get registry // 或 $ npm info express
- 使用淘宝镜像安装包
$ cnpm install express //或者 $ cnpm i express
五、yarn的安装和使用
yarn的简介
Yarn是facebook发布的一款取代npm的包管理工具。
yarn的特点
速度快:Yarn 缓存了每个下载过的包,所以再次使用时无需重复下载。 同时利用并行下载以最大化资源利用率,因此安装速度更快。
安全: 在执行代码之前,Yarn 会通过算法校验每个安装包的完整性。
可靠:使用详细、简洁的锁文件格式和明确的安装算法,Yarn 能够保证在不同系统上无差异的工作。
yarn的安装
- 下载node.js,使用npm安装
$ npm install -g yarn
查看版本:yarn --version
- 安装node.js,下载yarn的安装程序:
提供一个.msi文件,在运行时将引导您在Windows上安装Yarn
- Yarn 淘宝源安装,分别复制粘贴以下代码行到黑窗口运行即可
$ yarn config set registry https://registry.npm.taobao.org -g
$ yarn config set sass_binary_site http://cdn.npm.taobao.org/dist/node-sass -g
yarn的常用命令
安装
$ yarn npm install -g
yarn 安装成功后,查看版本号:
yarn --version
创建文件夹 .vuepress
$ md .vuepress
进入.vuepress文件夹
$ cd yarn
初始化项目
$ yarn init // 同npm init,执行输入信息后,会生成package.json文件
yarn的配置项
$ yarn config list // 显示所有配置项 $ yarn config get <key> //显示某配置项 $ yarn config delete <key> //删除某配置项 $ yarn config set <key> <value> [-g|--global] //设置配置项
安装包
$ yarn install //安装package.json里所有包,并将包及它的所有依赖项保存进yarn.lock $ yarn install --flat //安装一个包的单一版本 $ yarn install --force //强制重新下载所有包 $ yarn install --production //只安装dependencies里的包 $ yarn install --no-lockfile //不读取或生成yarn.lock $ yarn install --pure-lockfile //不生成yarn.lock
添加包(会更新package.json和yarn.lock)
$ yarn add [package] // 在当前的项目中添加一个依赖包,会自动更新到package.json和yarn.lock文件中 $yarn add [package]@[version] // 安装指定版本,这里指的是主要版本,如果需要精确到小版本,使用-E参数 $ yarn add [package]@[tag] // 安装某个tag(比如beta,next或者latest)
//不指定依赖类型默认安装到dependencies里,你也可以指定依赖类型:
$ yarn add --dev/-D // 加到 devDependencies $ yarn add --peer/-P // 加到 peerDependencies $ yarn add --optional/-O // 加到 optionalDependencies
//默认安装包的主要版本里的最新版本,下面两个命令可以指定版本:
$ yarn add --exact/-E // 安装包的精确版本。例如yarn add express@1.2.3会接受1.9.1版,但是yarn add express@1.2.3 --exact只会接受1.2.3版 $ yarn add --tilde/-T // 安装包的次要版本里的最新版。例如yarn add express@1.2.3 --tilde会接受1.2.9,但不接受1.3.0
发布包
$ yarn publish
移除一个包
$ yarn remove <packageName>:移除一个包,会自动更新package.json和yarn.lock 更新一个依赖 $ yarn upgrade 用于更新包到基于规范范围的最新版本 运行脚本 $ yarn run 用来执行在 package.json 中 scripts 属性下定义的脚本 显示某个包的信息 $ yarn info <packageName> 可以用来查看某个模块的最新版本信息
缓存
yarn cache
$ yarn cache list # 列出已缓存的每个包 $ yarn cache dir # 返回 全局缓存位置 $ yarn cache clean # 清除缓存
六、测试
全局安装svue-cli脚手架进行测试
npm i svue-cli -g yarn global add svue-cli cnpm i svue-cli -g npm install svue -g yarn global add svue cnpm i svue-cli -g npm i evue-cli -g yarn global add evue-cli cnpm i evue-cli -g npm i evue -g yarn global add evue cnpm i evue -g