1. 개요
2. 시작
SDK는 설치되어있다는 전제 하에 작업한다.
gcloud app create --project=[YOUR_PROJECT_ID]
3. App Engine 자바 구성요소 설치
gcloud components install app-engine-java
Your current Cloud SDK version is: 256.0.0 Installing components from version: 256.0.0 ┌───────────────────────────────────────────────────┐ │ These components will be installed. │ ├──────────────────────────────┬─────────┬──────────┤ │ Name │ Version │ Size │ ├──────────────────────────────┼─────────┼──────────┤ │ Cloud Datastore Emulator │ 2.1.0 │ 18.4 MiB │ │ gRPC python library │ 1.20.0 │ 1.9 MiB │ │ gRPC python library │ │ │ │ gcloud app Java Extensions │ 1.9.76 │ 85.9 MiB │ │ gcloud app Python Extensions │ 1.9.86 │ 6.0 MiB │ └──────────────────────────────┴─────────┴──────────┘ For the latest full release notes, please visit: https://cloud.google.com/sdk/release_notes Do you want to continue (Y/n)? y ╔════════════════════════════════════════════════════════════╗ ╠═ Creating update staging area ═╣ ╠════════════════════════════════════════════════════════════╣ ╠═ Installing: Cloud Datastore Emulator ═╣ ╠════════════════════════════════════════════════════════════╣ ╠═ Installing: gRPC python library ═╣ ╠════════════════════════════════════════════════════════════╣ ╠═ Installing: gRPC python library ═╣ ╠════════════════════════════════════════════════════════════╣ ╠═ Installing: gcloud app Java Extensions ═╣ ╠════════════════════════════════════════════════════════════╣ ╠═ Installing: gcloud app Python Extensions ═╣ ╠════════════════════════════════════════════════════════════╣ ╠═ Creating backup and activating new installation ═╣ ╚════════════════════════════════════════════════════════════╝ Performing post processing steps...done. Update done!
4. 인증
gcloud auth application-default login
브라우저 뜨면 로그인한다.
5. 코드 받아오기
git clone https://github.com/GoogleCloudPlatform/getting-started-java.git
Cloning into 'getting-started-java'... remote: Enumerating objects: 8, done. remote: Counting objects: 100% (8/8), done. remote: Compressing objects: 100% (8/8), done. remote: Total 8907 (delta 1), reused 0 (delta 0), pack-reused 8899 Receiving objects: 100% (8907/8907), 50.98 MiB | 8.00 MiB/s, done. Resolving deltas: 100% (4965/4965), done.
6. 로컬 실행
cd appengine-standard-java8/helloworld mvn appengine:run
(에러 발생 시 mvn package
를 한번 하고나서 하면 되더라는)
7. App Engine 배포
mvn appengine:deploy
이렇게 하면 된다고 하는데 계속 에러가 난다.
[INFO] GCLOUD: To set your project, run: [INFO] GCLOUD: [INFO] GCLOUD: $ gcloud config set project PROJECT_ID [INFO] GCLOUD: [INFO] GCLOUD: or to unset it, run: [INFO] GCLOUD: [INFO] GCLOUD: $ gcloud config unset project [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 6.578 s [INFO] Finished at: 2020-02-18T00:40:35+09:00 [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal com.google.cloud.tools:appengine-maven-plugin:2.2.0:deploy (default-cli) on project helloworld: App Engine application deployment failed: com.google.cloud.tools.appengine.operations.cloudsdk.process.ProcessHandlerException: com.google.cloud.tools.appengine.AppEngineException: Non zero exit: 1 -> [Help 1]
결국 이렇게 했다.
- getting-started-java/appengine-standard-java8/helloworld/target/appengine-staging 에 들어가서
- gcloud app deploy --project 프로젝트명
Do you want to continue (Y/n)? y Beginning deployment of service [default]... ╔════════════════════════════════════════════════════════════╗ ╠═ Uploading 17 files to Google Cloud Storage ═╣ ╚════════════════════════════════════════════════════════════╝ File upload done. Updating service [default]...done. Setting traffic split for service [default]...done.
성공.