[英]How to set environment variable into docker container using docker-compose
我想設置憑據以使用Google Translate Api Client,因此必須設置環境變量GOOGLE_APPLICATION_CREDENTIALS
,該值是憑據文件(來自Google Cloud)的路徑。
當我使用docker build
和docker run
這非常簡單。
我已經使用了docker run --env GOOGLE_APPLICATION_CREDENTIALS=/usr/src/app/CryptoTraderBot-901d31d199ce.json
並設置了環境變量。
當我嘗試在docker-compose中進行設置時,會遇到更困難的事情。 我必須使用docker-compose,因為我需要幾個容器,因此這是實現此目的的唯一方法。
基於Docker撰寫環境變量文檔,我創建了docker-compose.yml文件,如下所示:
version: "3"
services:
redis:
image: redis:4-alpine
crypto-bot:
build: .
depends_on:
- redis
environment:
- GOOGLE_APPLICATION_CREDENTIALS = /usr/src/app/CryptoTraderBot-901d31d199ce.json
我也嘗試過.json文件的路徑的多種組合,但是這些都沒有正常工作。
你知道我該如何正確設置嗎?
在提出這個問題時,我已經以一種有趣而又輕松的方式解決了這個問題,但是我一直認為我會發布答案以幫助將來遇到類似問題的人。
您所要做的就是刪除“”(空格)next =
符號,因此docker-compose.yml的最后兩行應如下所示: environment: - GOOGLE_APPLICATION_CREDENTIALS=/usr/src/app/CryptoTraderBot-901d31d199ce.json
-GOOGLE_APPLICATION_CREDENTIALS environment: - GOOGLE_APPLICATION_CREDENTIALS=/usr/src/app/CryptoTraderBot-901d31d199ce.json
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.