cloud-run
garbetjie/cloud-run/google
Terraform module to simplify the creation & management of Cloud Run services on GCP.
Terraform Module: Google Cloud Run ================================== A Terraform module for the Google Cloud Platform that simplifies the creation & configuration of a Cloud Run (Fully Managed) service. Table of contents Introduction Requirements Usage Secrets & Volumes Inputs Required Optional Outputs Changelog Roadmap Introduction This module is wrapper around the creation & configuration of Google Cloud Run (Fully managed) services, and provides sensible defaults for many of the options. It attempts to be as complete as possible, and expose as much functionality as is available. As a result, some functionality might only be provided as part of BETA releases. Google's SLA support for this level of functionality is often not as solid as with Generally-Available releases. If you require a
| Name | Type | Description | Default |
|---|---|---|---|
| location | string | Location of the service. | required |
| name | string | Name of the service. | required |
| image | string | Docker image name. | required |
| allow_public_access | bool | Allow unauthenticated access to the service. | true |
| map_domains | set(string) | Domain names to map to the service. | [] |
| port | number | Port on which the container is listening for incoming HTTP requests. | 8080 |
| project | string | Google Cloud project in which to create resources. | null |
| args | list(string) | Arguments to pass to the entrypoint. | [] |
| cpu_throttling | bool | Configure CPU throttling outside of request processing. | true |
| execution_environment | string | Execution environment to run container instances under. | "gen1" |
| http2 | bool | Enable use of HTTP/2 end-to-end. | false |
| volumes | set(object({ path = string, se | Volumes to be mounted & populated from secrets. | [] |
| vpc_access | object({ connector = optional( | Control VPC access for the service. | {
"connector": null,
"egress": null
|
| vpc_connector_name | string | VPC connector to apply to this service (Deprecated - use `var.vpc_access.connect | null |
| concurrency | number | Maximum allowed concurrent requests per container for this revision. | null |
| entrypoint | list(string) | Entrypoint command. Defaults to the image's ENTRYPOINT if not provided. | [] |
| env | set( object({ key = | Environment variables to inject into container instances. | [] |
| ingress | string | Ingress settings for the service. Allowed values: [`"all"`, `"internal"`, `"inte | "all" |
| timeout | number | Maximum duration (in seconds) allowed for responding to requests. | 60 |
| max_instances | number | Maximum number of container instances allowed to start. | 1000 |
| vpc_access_egress | string | Specify whether to divert all outbound traffic through the VPC, or private range | "private-ranges-only" |
| memory | number | Memory (in Mi) to allocate to containers. Minimum of 512Mi is required when `exe | 256 |
| min_instances | number | Minimum number of container instances to keep running. | 0 |
cpus — Number of CPUs allocated per container.map_domains — Domain names mapped to the service.latest_ready_revision_name — Latest revision ready for use.image — Docker image name.cloudsql_connections — Cloud SQL connections attached to container instances.memory — Memory (in Mi) allocated to container instances.allow_public_access — Allow unauthenticated access to the service.http2 — Status of HTTP/2 end-to-end handling.volumes — Secrets mounted as volumes into the service.dns — DNS records to populate for mapped domains. Keys are the domains that are mapped.args — Arguments passed to the entrypoint.cpu_throttling — Configuration for CPU throttling outside of request processing.entrypoint — Entrypoint command used in the service.min_instances — Minimum number of container instances to keep running.concurrency — Maximum allowed concurrent requests per container for the created revision.execution_environment — Execution environment container instances are running under.project — Google Cloud project in which resources were created.timeout — Maximum duration (in seconds) allowed for responding to requests.url — URL at which the service is available.name — Name of the service.location — Location of the service.env — Environment variables injected into container instances.labels — Labels applied to the service.memory_suffixed — Memory allocated to containers instances, with the relevant suffix (eg: "256Mi" if `var.memory` is 2cpus_suffixed — CPUs allocated per container, specified with the millicpu suffix (eg: "1000m" if `var.cpus` is 1).vpc_access — VPC access configuration.id — ID of the created service.latest_created_revision_name — Last revision created.ingress — Ingress settings applied to the service.max_instances — Maximum number of container instances allowed to start.A batteries included cloud-init config to quickly and easily deploy a single Doc
Automatically configure and deploy PgBouncer on Google Cloud with this Terraform
Create instance CloudSQL (GCP)
DiscrimiNAT Firewall is a transparent, proxy-less solution to discover & filter