linux下node-sass安装失败的解决方法
最近在实现前端自动化构建部署时,遇到linux服务器端node-sass
安装失败的错误,解决后特在此记录一下。自动化构建部署简单来说就是在构建部署服务器上拉取存放在gitlab上前端源码,然后执行npm install
、npm run build
等命令对项目进行打包,然后再执行一些脚本将打包后的成果物放在前端项目运行的服务器上。
前端项目打包需要在node环境下,于是在linux环境服务器下安装node,在服务器网络可以正常访问的情况下,将前端项目源码拉取下来后,执行npm install
会安装项目所需的依赖,在通过npm run build
就可以打出前端项目包。但是,实际情况就没有那么简单,我们在实现过程中遇到了两个问题:首先是我们前端项目所需的依赖来源多样化,有的依赖是公共的,也就是在淘宝npm源、npm官方源上就可以下载安装,有的则是公司自己开发的,需要切换到公司的npm源上进行安装,在服务器上单单在一个npm源上通过npm install
是无法将项目所需的依赖都安装完成,但是切换npm源进行安装就难以实现自动化构建;其次是公司服务器是无法与外网连接,也就是想通过npm install
下载依赖是不可能的。于是只能通过将本地的依赖文件夹(node_modules
)上传到服务器上,这样就省了每次下载安装依赖过程,也提高了构建速度。
如果项目中没有使用node-sass
依赖的话,通过将node_modules