【玩转Lighthouse】 配合coding进行持续集成

2022-04-20 18:12:11 浏览数 (1)

前言

平时开发中,一直使用coding自带的持续集成,由于免费额度的限制,一直都不敢放开了用,如果买官方的高性能包,一年1999,有这钱,我买个轻量自建节点它不香嘛,国内2H4G的轻量原价才1000左右,要是碰上活动,等于交个朋友,而且我感觉最低配2H2G就完全够用了。所以我准备探索一下持续集成中添加自定义节点的功能。

1.png1.png

来自腾讯云官网介绍:轻量应用服务器(TencentCloud Lighthouse)是新一代开箱即用、面向轻量应用场景的云服务器产品,助力中小企业和开发者便捷高效的在云端构建网站、小程序/小游戏、电商、云盘/图床以及各类开发测试和学习环境,相比普通云服务器更加简单易用,提供高带宽流量包并以套餐形式整体售卖基础云资源,将热门开源软件融合打包实现一键构建应用,是您使用腾讯云的最佳入门途径。

准备

由于囊中羞涩,这次就用我手里的现成的一台1H1G的香港轻量来测试,主要是想看下这么低的配置它能不能跑起来。

这里系统镜像选择的是Ubuntu Server 20.04,测试工程是个简单的vue3项目,计划是只安装一个docker环境,项目的编译在docker中进行。

添加swap分区

经过我的测试,1G内存,肯定是不够的,还没跑起来,服务器就失联了,所以这里配置了4G swap分区。

代码语言:shell复制
dd if=/dev/zero of=/swapfile bs=1M count=4096
mkswap /swapfile
swapon /swapfile
echo '/swapfile swap swap defaults 0 0' >> /etc/fstab

根据提示,需要安装jdk11

代码语言:shell复制
apt install -y openjdk-11-jdk

按照提示,运行“接入新节点”的命令。

image-20220420091618941.pngimage-20220420091618941.png

参考docker官网的文档,安装docker:

代码语言:shell复制
sudo apt-get update
sudo apt-get install 
    ca-certificates 
    curl 
    gnupg 
    lsb-release
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo 
  "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu 
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

创建构建计划

在文本编辑器中,填入Jenkinsfile内容,这里的发布环节,只把编译结果复制到/web目录中。

image-20220420101408522.pngimage-20220420101408522.png
代码语言:text复制
pipeline {
  agent any
  stages {
    stage('检出') {
      steps {
        checkout([
          $class: 'GitSCM',
          branches: [[name: GIT_BUILD_REF]],
          userRemoteConfigs: [[
            url: GIT_REPO_URL,
            credentialsId: CREDENTIALS_ID
          ]]])
        }
      }
      stage('编译') {
        agent {
          docker {
            image 'node'
            reuseNode 'true'
          }

        }
        steps {
          echo '开始构建'
          sh '''npm install yarn
yarn
yarn build'''
        }
      }
      stage('发布') {
        steps {
          sh 'cp -r dist /web'
        }
      }
    }
  }

构建测试

点击“立即构建”,成功,撒花!

image-20220420101349864.pngimage-20220420101349864.png

0 人点赞