Prechádzať zdrojové kódy

fix: 2025-02-27 添加jenkines打包文件

mingliang.yang 3 mesiacov pred
rodič
commit
05058ce834
2 zmenil súbory, kde vykonal 19 pridanie a 31 odobranie
  1. 13 12
      Dockerfile
  2. 6 19
      Jenkinsfile

+ 13 - 12
Dockerfile

@@ -1,20 +1,21 @@
-FROM node:18-alpine as build-stage
-
+FROM node:18-alpine
+# 设置工作目录
 WORKDIR /app
-RUN corepack enable
-RUN corepack prepare pnpm@8.6.10 --activate
 
-RUN npm config set registry https://registry.npmmirror.com
+# 复制 package.json 和 package-lock.json
+COPY package*.json ./
 
-COPY .npmrc package.json pnpm-lock.yaml ./
-RUN pnpm install --frozen-lockfile
+# 安装项目依赖
+RUN npm install
 
+# 复制项目文件
 COPY . .
-RUN pnpm build
 
-FROM nginx:stable-alpine as production-stage
+# 构建项目
+RUN npm run build:dev
 
-COPY --from=build-stage /app/dist /usr/share/nginx/html
-EXPOSE 80
+# 创建一个卷,用于将构建结果挂载到宿主机
+VOLUME /build
 
-CMD ["nginx", "-g", "daemon off;"]
+# 将构建结果复制到卷中
+RUN cp -r build/* /build/

+ 6 - 19
Jenkinsfile

@@ -1,41 +1,28 @@
 pipeline {
     agent any
-    environment{
-        PATH="/opt/nodejs18/bin/pnpm"
-    }
     stages {
         stage('Checkout') {
             steps {
                 // 从版本控制系统中检出代码
                 checkout scm
+                sh 'cd /hospital-project & docker build -t frontend-build .'
             }
         }
-              stage('whoami') {
-                        steps {
-                            // 从版本控制系统中检出代码
-                           sh 'whoami'
-                           sh '/opt/nodejs18/bin/pnpm -v'
-                        }
-                    }
-        stage('Install Dependencies') {
-            steps {
-                // 安装项目依赖
-                sh '/opt/nodejs18/bin/pnpm install'
-            }
-        }
+
 
         stage('Build') {
             steps {
                 // 构建Vue项目(开发环境)
-                sh '/opt/nodejs18/bin/npm run build:dev'
+                sh 'cd /hospital-project & docker build -t frontend-build .'
             }
         }
 
         stage('Publish Locally') {
             steps {
-               sh 'rm -rf /home/medic/dist'
+                sh 'docker run --rm -v /home/medic:/build '
+                sh 'rm -rf /home/medic/dist'
                 // 将构建结果复制到本地目录(可自定义目录)
-                sh 'cp -r dist /home/medic'
+                //sh 'cp -r dist /home/medic'
                 // 解压dist.zip到指定目录
                 sh 'unzip /home/medic/dist.zip -d /home/medic/dist'
             }