> For the complete documentation index, see [llms.txt](https://zkemail-internal.saugar.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://zkemail-internal.saugar.dev/setup-container-repo-to-build-and-push-containers.md).

# Setup Container Repo to Build and Push Containers

Enable *Cloud build* and *Artifact Registry*

```
gcloud services enable cloudbuild.googleapis.com artifactregistry.googleapis.com
```

Create *Artifact Registry* repo

```
gcloud artifacts repositories create ether-email-auth --repository-format=docker --location=us-central1 --description="Base and Relayer docker images for ether-email-auth"
```

Create a `cloudbuild.yaml` to configure, e.g.

```
steps:
  # Build the base container image
  - name: 'gcr.io/cloud-builders/docker'
    args:
      [
        'build',
        '-t',
        'us-central1-docker.pkg.dev/zkairdrop/ether-email-auth/relayer-base:v1',
        '-f',
        'Base.Dockerfile',
        '.',
      ]
  # Push the base container image to Artifact Registry
  - name: 'gcr.io/cloud-builders/docker'
    args:
      [
        'push',
        'us-central1-docker.pkg.dev/zkairdrop/ether-email-auth/relayer-base:v1',
      ]
```
