Skip to main content
Version: 23.3

Google Cloud

This page describes the infrastructure and other prerequisites for deploying Seqera Platform Enterprise on Google Cloud Platform (GCP).

Run the Seqera container with Docker on a GCP VM instance or with Kubernetes on a Google GKE cluster. You must satisfy the requirements for your installation target:

  • SMTP server: If you don't have an email server, Google Cloud provides several ways to send emails, such as SendGrid, Mailgun, and Mailjet. Work with your IT team to select the best solution for your organization.

  • MySQL database: An external database such as Google CloudSQL is highly recommended for production environments.

  • SSL certificate: An SSL certificate is required for your Seqera instance to handle HTTPS traffic.

    HTTP-only implementations must set the TOWER_ENABLE_UNSAFE_MODE=true environment variable in the Seqera hosting infrastructure to enable user login. HTTP must not be used in production environments.

  • Public IP address: (Optional) A public IP address can be reserved for the Seqera ingress to keep the IP address constant across restarts.

    Reserve a public IP address
    1. Go to VPC network > External IP addresses and select Reserve Static Address.
    2. Assign a name (such as tower-ip). This name will be used later to configure the ingress.
    3. Select the region where your GKE cluster is deployed.
    4. Select Reserve.

Prerequisites for Docker

A Google Compute Engine (GCE) instance is required to deploy Seqera Enterprise via Docker Compose. See Google Compute Engine to provision a VM instance for this purpose.

Prerequisites for GKE

A Google Kubernetes Engine (GKE) cluster is required to deploy Seqera Enterprise via Kubernetes. See the GKE documentation to provision your own cluster.

Seqera doesn't currently support GKE Autopilot due to a privilege issue with the Redis deployment. However, you can achieve most of the same behavior with a Standard cluster by enabling autoscaling and node auto-provisioning.

GCP setup

This section provides step-by-step instructions for some commonly used GCP services for Seqera deployment. See the GCP documentation for up-to-date instructions and contact GCP support if you have any issues with provisioning GCP resources.

Google CloudSQL

Create a Google CloudSQL instance with the following attributes:

  • MySQL 8.0
  • At least 2 vCPUs, 8 GB memory, and 30 GB SSD storage
  • Private IP

The recommended machine type and storage requirements depend on the number of parallel pipelines you expect to run.

  1. See Create a MySQL instance for Cloud console instructions.
  2. After the instance has been created, select the instance, then Databases. Create a new database named tower.
  3. Note the Private IP address of the instance as it must be supplied to the TOWER_DB_URL environment variable.

Google Compute Engine

Create a VM instance with these attributes:

  • At least 2 vCPUs and 8 GB memory
  • HTTP traffic enabled. By default, the frontend is exposed to port 8000, so you must add a firewall rule to the underlying VPC network to allow traffic on port 8000 after VM creation.
  • SSH enabled (to allow connection to the VM). If you experience issues with SSH, or would like to set up IAP SSH, see TCP forward to IAP.

See Create a VM instance from a public image for Cloud console instructions.

After you have created your VM instance:

  1. Connect to the machine using SSH.
  2. Install Docker.
  3. Confirm that Docker Compose is installed:
    docker compose version
    Docker Compose version v2.24.1

Seqera container images

Seqera Platform Enterprise is distributed as a collection of Docker containers available through the Seqera container registry cr.seqera.io. Contact support to get your container access credentials. After you receive your credentials, retrieve the Seqera container images on your VM instance:

  1. Retrieve the username and password you received from Seqera support.
  2. Authenticate to the registry:
    docker login -u '/\<USERNAME\>/' -p '/\PASSWORD\>/' cr.seqera.io
  3. Pull the Seqera container images:
    docker pull cr.seqera.io/private/nf-tower-enterprise/backend:v23.4.3

    docker pull cr.seqera.io/private/nf-tower-enterprise/frontend:v23.4.3

Next steps

See Configuration.