Docker compose with backup-gcs not fetching credentials file

Description

I am using docker compose to start weaviate with backup-gcs included in the module section. I get the following error:-

{"action":"startup","error":"init modules: init module 2 (\"backup-gcs\"): init gcs client: find default credentials: google: error getting credentials using GOOGLE_APPLICATION_CREDENTIALS environment variable: open <path in server>/credential.json: no such file or directory","level":"fatal","msg":"modules didn't initialize","time":"2024-12-04T06:38:01Z"}

Server Setup Information

  • Weaviate Server Version: v1.25.6
  • Deployment Method: docker
  • Multi Node? Number of Running Nodes: 1
  • Client Language and Version: nodejs
  • Multitenancy?: yes

Any additional Information

Adding the docker compose file here for reference (i have removed sensitive information from the below file):

---
services:
  weaviate:
    command:
    - --host
    - 0.0.0.0
    - --port
    - '8080'
    - --scheme
    - http
    image: <path>/weaviate:1.25.6
    ports:
    - 5500:8080
    - 50051:50051
    volumes:
    - /home/ubuntu/<path>:/var/lib/weaviate
    restart: on-failure:0
    environment:
      TRANSFORMERS_INFERENCE_API: 'http://t2v-transformers:8080'
      IMAGE_INFERENCE_API: 'http://i2v-neural:8080'
      QUERY_DEFAULTS_LIMIT: 25
      AUTHENTICATION_ANONYMOUS_ACCESS_ENABLED: 'true'
      PERSISTENCE_DATA_PATH: '/var/lib/weaviate'
      DEFAULT_VECTORIZER_MODULE: 'text2vec-transformers'
      ENABLE_MODULES: 'text2vec-transformers,img2vec-neural,backup-gcs'
      CLUSTER_HOSTNAME: 'node1'
      AUTHENTICATION_APIKEY_ENABLED: 'true'
      AUTHENTICATION_APIKEY_ALLOWED_KEYS: <key>
      AUTHENTICATION_APIKEY_USERS: <user>
      BACKUP_GCS_BUCKET: <bucket>
      BACKUP_GCS_PATH : <path>
      BACKUP_GCS_USE_AUTH : 'true'
      GOOGLE_APPLICATION_CREDENTIALS : <path in server>/credential.json
      GCP_PROJECT: <gcp-project>
  t2v-transformers:
    image: <image>
    environment:
      ENABLE_CUDA: '0'
  i2v-neural:
    image: <image>
    environment:
      ENABLE_CUDA: '0'
...

hi @Kesav_S !!

Welcome to our community :hugs:

That’s strange. This has worked for me:

      ....
      GOOGLE_APPLICATION_CREDENTIALS: /var/lib/weaviate/duda-project-425315-7c9f819c0366.json
      BACKUP_GCS_BUCKET: "duda-test"
    volumes:
    - ./data:/var/lib/weaviate

Can you see the credential.json in your path?

you can check it like this:

docker compose exec -ti weaviate sh -c 'ls /var/lib/weaviate/*.json'

/var/lib/weaviate/duda-project-425315-7c9f819c0366.json

Let me know if this helps!

Thanks!