【Drone】drone编译web端 防墙策略 | 如何在被墙的状态drone顺利编译npm

一、drone编译防墙版本

1、web端drone

yaml 复制代码
kind: pipeline
type: docker
name: ui
steps:
  - name: build_project
    image: node:20-slim 
    depends_on: [clone]
    volumes:
      - name: node_modules
        path: /drone/src/node_modules
    commands:
      - pwd
      - du -sh *
      - npm config set registry https://registry.npmmirror.com
      - npm install -g pnpm || npm install -g pnpm || npm install -g pnpm  # Retry logic
      - pnpm config set store-dir /drone/src/node_modules/.pnpm-store
      - pnpm install || pnpm install || pnpm install  # Retry logic
      - npm run build
      - du -sh *

  - name: build_image
    image: plugins/docker:20
    depends_on: [build_project]
    # volumes:
    #   - name: docker-sock
    #     path: /var/run/docker.sock
    settings:
      dockerfile: Dockerfile
      registry: registry.cn-beijing.aliyuncs.com
      repo:  registry.cn-beijing.aliyuncs.com/xxx/cp-business-web
      auto_tag: true
      insecure: true
      username:
        from_secret: docker_username
      password:
        from_secret: docker_password


trigger:
  #  branch:
  #    - main
  ref:
    - refs/tags/*
    - refs/heads/master

volumes:
  - name: go_cache
    host:
      path: /root/.go/cache

2、详解

1、name


2、step 编译步骤

第一个 image,image: node:20-slim 这里需要你找到开源的镜像
这里commands一定要加上中国的镜像源

yaml 复制代码
    commands:
      - pwd
      - du -sh *
      - npm config set registry https://registry.npmmirror.com
      - npm install -g pnpm || npm install -g pnpm || npm install -g pnpm  # Retry logic
      - pnpm config set store-dir /drone/src/node_modules/.pnpm-store
      - pnpm install || pnpm install || pnpm install  # Retry logic
      - npm run build
      - du -sh *

这里是重要的防墙处理如果不处理 则npm 一安装就报错

3、各种报错如下

二、drone 讲解请参考如下:

https://ctraplatform.blog.csdn.net/article/details/130003341

相关推荐
恋猫de小郭20 小时前
作为 Cursor 和 Claude Code 的研发者,他们是如何看待和使用 AI
android·前端·ai编程
hai742520 小时前
通达OA批量导出PDF审批表单与批量打印功能组件介绍
前端
Dreamcatcher_AC20 小时前
慢慢买项目:一站式开发指南
前端·javascript·mongodb·node.js
烤麻辣烫20 小时前
黑马大事件学习-19(文章)
前端·css·vue.js·学习·html
西西学代码20 小时前
Flutter---折线图(使用外部库)
前端·javascript·flutter
json{shen:"jing"}21 小时前
07_表单输入绑定
java·前端·javascript
yyt36304584121 小时前
K 线图高性能窗口化渲染
前端·javascript·css·vue.js·gitee·vue
XiaoYu200221 小时前
第5章 Nest.js精进-IOC控制反转
前端
LV技术派21 小时前
适合很多公司和团队的 AI Coding 落地范式(二)
前端·aigc·ai编程
IT_陈寒21 小时前
Redis性能翻倍的5个冷门技巧:从每秒10万到20万的实战优化之路
前端·人工智能·后端