>  Q&A  >  본문

Cloudbuild에서 App Engine에 배포하는 데 문제가 발생했습니다.

Node + Vue JS를 사용하여 프로젝트를 빌드했는데, 프로젝트 구조에 프런트엔드 코드와 백엔드 코드에 대한 디렉터리가 다릅니다. /api 是后端代码,有自己的package.json,而 ui 프런트 엔드 코드이며 자체 package.json도 있습니다. 프로젝트는 다음과 같이 구성됩니다:

으아아아

Cloudbuild를 사용하여 App Engine에 프로젝트를 배포하려고 합니다. cloudbuild.yaml 파일 구조는 다음과 같습니다.

으아아아

0-2단계가 성공적으로 완료되었지만 프로덕션용 Vue 앱을 빌드할 때 특히 빌드가 실패합니다 yarn run build命令。此命令在/ui目录的package.json中被列为vue-cli-service build.

오류 메시지는 /bin/sh: 1: vue-cli-service: not found

입니다.

Cloudbuild가 vue-cli를 찾을 수 없는 것 같습니다. 설치되지 않았거나 무엇을 빌드해야 할지 모르는 것 같습니다.

제 질문은 Cloudbuild를 사용하여 서로 다른 디렉터리가 있는 프로젝트를 App Engine에 배포하는 방법입니다.

P粉018548441P粉018548441188일 전429

모든 응답(1)나는 대답할 것이다

  • P粉736935587

    P粉7369355872024-04-01 00:43:36

    Cloud Build의 핵심 원칙 중 하나는 각 단계에서 다음 실행 컨텍스트부터 시작하는 것입니다. 각 단계 사이에는 /workspace 디렉터리만 유지됩니다.

    세 번째 단계에서는 vue cli를 전역적으로 설치하므로 현재 디렉터리(작업 공간의 하위 디렉터리)가 아닌 컨테이너 런타임 디렉터리(/etc또는 다른 곳, 어떤 경우에도 작업 공간 아래가 아님)에 설치합니다.

    global 매개변수를 제거하면 라이브러리가 애플리케이션 디렉터리(global参数,您将在应用程序目录(/workspace 아래)에 로컬로 설치되므로 이후 단계에서도 설치가 유지됩니다.

    회신하다
    0
  • 취소회신하다