| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
parent directory.. | ||||
This directory contains samples for Google Cloud Run. Cloud Run runs stateless containers on a fully managed environment or in your own GKE cluster.
| Sample | Description | Deploy |
|---|---|---|
| Hello World | Quickstart | |
| Cloud Pub/Sub | Handling Pub/Sub push messages | |
| System Packages | Using system packages with containers | |
| Image Magick | Event-driven image analysis & transformation | |
| Manual Logging | Structured logging for Stackdriver | |
| Local Troubleshooting | Broken services for local troubleshooting tutorial | |
| Cloud SQL (MySQL) | Use MySQL with Cloud Run | |
| Events - Pub/Sub | Events for Cloud Run with Pub/Sub | |
| Anthos Events - Pub/Sub | Events for Cloud Run on Anthos with Pub/Sub | - |
| Events - GCS | Events for Cloud Run with GCS | |
| Anthos Events - GCS | Events for Cloud Run on Anthos with GCS | - |
| Authentication | Make an authenticated request by retrieving a JSON Web Tokens (JWT) |
For more Cloud Run samples beyond Java, see the main list in the Cloud Run Samples repository.
These samples use Jib to build Docker images using common Java tools. Jib optimizes container builds without the need for a Dockerfile or having Docker installed. Learn more about how Jib works.
Clone this repository:
git clone https://github.com/GoogleCloudPlatform/java-docs-samples.git
In the samples's pom.xml, update the image field for the jib-maven-plugin with your Google Cloud Project Id:
<plugin>
<groupId>com.google.cloud.tools</groupId>
<artifactId>jib-maven-plugin</artifactId>
<version>2.0.0</version>
<configuration>
<to>
<image>gcr.io/PROJECT_ID/SAMPLE_NAME</image>
</to>
</configuration>
</plugin>Build the sample container using Jib:
mvn compile jib:dockerBuildRun containers locally by replacing PROJECT_ID and SAMPLE_NAME with your values.
With the built container:
PORT=8080 && docker run --rm -p 9090:${PORT} -e PORT=${PORT} gcr.io/PROJECT_ID/SAMPLE_NAMEInjecting your service account key for access to GCP services:
PORT=8080 && docker run \
-p 9090:${PORT} \
-e PORT=${PORT} \
-e K_SERVICE=dev \
-e K_CONFIGURATION=dev \
-e K_REVISION=dev-00001 \
-e GOOGLE_APPLICATION_CREDENTIALS=/tmp/keys/[FILE_NAME].json \
-v $GOOGLE_APPLICATION_CREDENTIALS:/tmp/keys/[FILE_NAME].json:ro \
gcr.io/PROJECT_ID/SAMPLE_NAMEUse the --volume (-v) flag to inject the credential file into the container (assumes you have already set your GOOGLE_APPLICATION_CREDENTIALS environment variable on your machine)
Use the --environment (-e) flag to set the GOOGLE_APPLICATION_CREDENTIALS variable inside the container
Open http://localhost:9090 in your browser.
Learn more about testing your container image locally.
Build the sample container using Jib:
mvn compile jib:build
Note: Using the image tag gcr.io/PROJECT_ID/SAMPLE_NAME automatically pushes the image to Google Container Registry.
Deploy to Cloud Run by replacing PROJECT_ID and SAMPLE_NAME with your values:
gcloud run deploy --image gcr.io/PROJECT_ID/SAMPLE_NAMESee building containers and deploying container images for more information.
Dockerize a Spring Boot app without a Dockerfile using Jib.
To improve Tomcat startup time, add -Djava.security.egd=file:/dev/./urandom to the Dockerfile's CMD instructions. This is acceptable for many applications. However, if your application does it's own key generation, such as for SSL, and you require greater security, you may prefer to not set java.security.egd.
| Back | FazBrowse Home | New Git URL |