docker

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > 云和虚拟化 > docker > gitlab-runner搭建nvm、nrm及优化maven打包

gitlab-runner中搭建nvm、nrm以及优化maven打包方式

作者:一只牛博

文章描述了如何在GitLab Runner上配置NVM、NRM,并优化Maven打包过程,通过上述配置和优化,作者将Maven打包时间从三分钟缩短到不到40秒

gitlab-runner搭建nvm、nrm及优化maven打包

因为gitlab-runner作为服务器的一个用户,所以它是不能具备所有root权限的,对于nvm、nrm也是,除非将其安装到非~目录下

git、gitlab-runner

CentOS 7上的GitLab Runner,让你的项目加速奔跑

如何以gitlab-runner执行

sudo -u gitlab-runner -i

sudo -u gitlab-runner -i 是一个 Linux 命令,它的含义可以分解如下:

组合的意义

sudo -u gitlab-runner -i 命令的完整含义就是:

应用场景

nvm、nrm

搭建nvm

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.6/install.sh | bash

我用的是0.39.6版本的,目前最新的是0.40.1

加载nvm

在安装完成后,你需要加载 NVM。

你可以通过以下命令来激活 NVM:

source ~/.nvm/nvm.sh

或者通过添加以下内容到 ~/.bashrc 文件中,以便每次启动终端时自动加载:

export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm

保存并退出后,可以通过以下命令来使配置生效:

source ~/.bashrc

下载node

# 其中14.15.1为版本号
nvm install 14.15.1

下载nrm

npm install -g nrm

下载成功截图

上面虽然是在系统中搭建的,但是在gitlab-runner中搭建方式也是一样的

注意:在编写gitlab-ci.yml的时候要执行 source ~/.bashrc

build:
  stage: build
#  image: node:16  # 使用 Node.js 14 镜像作为构建环境
  script:
    - source ~/.bashrc # 自动加载配置文件
    - npm install  # 安装项目依赖
    - npm run build  # 执行构建命令,生成静态文件
    - tar -czf public.tar.gz -C public .  # 将 public 目录下的内容打包为 public.tar.gz
  artifacts:
    paths:
      - public.tar.gz  # 将打包后的文件作为 artifacts,以供后续阶段使用
  tags:
#    - saas-linux-small-amd64
    - acowbo-node

优化maven

优化前大概发一次版本需要三分钟,优化后仅需要不到40s

这里给大家提供一个思路

优化拉依赖(如果你没有本地仓库的话,就会每次都要拉取线上的依赖,非常费时间)优化打包(如果你的项目很大,这时候就要想优化打包了,因为对于不同服务器的文件传输,也是很费时间的)

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文