尝试从 docker 容器访问时,数据存储返回 503
Posted
技术标签:
【中文标题】尝试从 docker 容器访问时,数据存储返回 503【英文标题】:Datastore returns 503 when trying to access from a docker container 【发布时间】:2016-02-16 07:21:23 【问题描述】:我有一个运行 Ubuntu 15.10 和 docker 1.10.1 的 Google Compute Engine 实例。当我尝试从实例上的 gcloud-python 访问 Google Datastore 时,一切正常。当我尝试从基于 python:3.5
的 docker 容器内部访问它时,我总是收到 503 错误。这是完整的堆栈跟踪:
>>> unit = client.get(key)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python3.5/site-packages/gcloud/datastore/client.py", line 262, in get
deferred=deferred)
File "/usr/local/lib/python3.5/site-packages/gcloud/datastore/client.py", line 303, in get_multi
transaction_id=transaction and transaction.id,
File "/usr/local/lib/python3.5/site-packages/gcloud/datastore/client.py", line 136, in _extended_lookup
transaction_id=transaction_id,
File "/usr/local/lib/python3.5/site-packages/gcloud/datastore/connection.py", line 200, in lookup
_datastore_pb2.LookupResponse)
File "/usr/local/lib/python3.5/site-packages/gcloud/datastore/connection.py", line 118, in _rpc
data=request_pb.SerializeToString())
File "/usr/local/lib/python3.5/site-packages/gcloud/datastore/connection.py", line 95, in _request
raise make_exception(headers, content, use_json=False)
gcloud.exceptions.ServiceUnavailable: 503 Backend Error
谁能告诉我这里可能发生了什么?
【问题讨论】:
【参考方案1】:对我来说,通过启用“Google Cloud Datastore API (v1beta2)”解决了这个问题。不要将其与“Google Cloud Datastore API”混淆。为此,您可以转到 API Manager 概览,搜索“datastore”选择“Google Cloud Datastore API (v1beta2)”,然后点击“启用”按钮。
【讨论】:
以上是关于尝试从 docker 容器访问时,数据存储返回 503的主要内容,如果未能解决你的问题,请参考以下文章
如何实现跨 Docker 主机存储?- 每天5分钟玩转 Docker 容器技术(73)