​App Engine is a fully managed Platform-as-a-Service that can run your application, provision a HTTPS load balancer, and scale out your workload as needed. When no one is using your application, it can scale down to zero.
cd $HOMEgit clone https://github.com/saturnism/jvm-helloworld-by-examplecd jvm-helloworld-by-example/helloworld-springboot-tomcat
./mvnw package
gcloud app deploy target/helloworld.jar
If this is your first time using App Engine on the project, you'll be prompted to choose a region. Pick the region that's most suitable for your application. This site mostly uses us-central
as an example.
Once you select the region, you cannot change it for an App Engine application.
Once deployed, the command will output the HTTPs URL. To open the URL in your browser:
gcloud app browse
To find the URL without opening the browser:
gcloud app browse --no-launch-browser
You can curl
the URL:
URL=$(gcloud app browse --no-launch-browser)curl ${URL}
You can run any Java service in App Engine as long as it's packaged as a JAR file, and can be executed with java -jar app.jar
.
By default, App Engine will deploy with the smallest F1
instance class. You can specify a larger instance, configure environment variables, and more tuning parameters using an app.yaml
:
app.yamlruntime: java11instance_class: F4env_variables:SPRING_PROFILES_ACTIVE: "prod"
See App Engine Standard Instance Classes documentation for a list of Instance Classes and associated CPU/Memory resources.
Deploy the JAR file with the configuration:
gcloud app deploy target/helloworld.jar \--appyaml app.yaml
Learn more about the configurations in app.yaml reference documentation.