Docker运行无法找到Google身份验证“ oauth2google.DefaultTokenSource:谷歌:找不到默认凭据”

时间:2020-08-28 14:35:45

标签: linux docker google-cloud-platform

嘿,我想弄清楚为什么我在运行docker run命令时总是收到此错误。这是我正在跑步的

docker run -p 127.0.0.1:2575:2575 -v ~/.config:/home/.config gcr.io/cloud-healthcare-containers/mllp-adapter /usr/mllp_adapter/mllp_adapter --hl7_v2_project_id=****** --hl7_v2_location_id=us-east1 --hl7_v2_dataset_id=*****--hl7_v2_store_id=*****--export_stats=false --receiver_ip=0.0.0.0

我尝试使用ubuntu和Windows都遇到错误,该错误导致无法连接并查看googles服务验证文档。我已经确认该帐户已启用,并且密钥已导出到下面的配置

randon@ubuntu-VM:~/Downloads$ gcloud auth configure-docker
WARNING: Your config file at [/home/brandon/.docker/config.json] contains these credential helper entries:

{
  "credHelpers": {
    "gcr.io": "gcloud",
    "us.gcr.io": "gcloud",
    "eu.gcr.io": "gcloud",
    "asia.gcr.io": "gcloud",
    "staging-k8s.gcr.io": "gcloud",
    "marketplace.gcr.io": "gcloud"
  }

我正在考虑-v命令如何使用Google身份验证。任何帮助或指导进行修复,谢谢

-v ~/.config:/root/.config is used to give the container access to gcloud credentials;

1 个答案:

答案 0 :(得分:1)

我面对了好几个小时,即使我不是一名Go开发人员,也决定检查源代码。

因此,我发现我们有一个credentials option来设置凭据文件。暂时没有记录。

docker命令应类似于:

docker run \
    --network=host \
    -v ~/.config:/root/.config \
    gcr.io/cloud-healthcare-containers/mllp-adapter \
    /usr/mllp_adapter/mllp_adapter \
    --hl7_v2_project_id=$PROJECT_ID \
    --hl7_v2_location_id=$LOCATION \
    --hl7_v2_dataset_id=$DATASET_ID \
    --hl7_v2_store_id=$HL7V2_STORE_ID \
    --credentials=/root/.config/$GOOGLE_APPLICATION_CREDENTIALS \
    --export_stats=false \
    --receiver_ip=0.0.0.0 \
    --port=2575 \
    --api_addr_prefix=https://healthcare.googleapis.com:443/v1 \
    --logtostderr

别忘了将凭据文件放入~/.config文件夹中。

在这里工作正常。希望对您有所帮助。

欢呼