当我访问Cloud Datastore Web管理时,"索引"部分下没有列出索引,我想明确定义一些索引以运行高级查询.我有一个yaml文件,看起来像:
indexes:
- kind: order
ancestor: no
properties:
- name: email
- name: name
- name: ownerId
- name: status
- name: updated_at
- name: created_at
direction: descRun Code Online (Sandbox Code Playgroud)
然后我运行以下命令来创建索引:
gcloud预览数据存储区创建索引indices.yaml
这是我得到的错误消息:
"AppInfoExternal类型的对象的意外属性'索引'"
有没有人遇到同样的问题?有任何想法吗?
问候,何塞
google-cloud-datastore google-cloud-platform google-cloud-sdk
有没有办法通过docker run 传递我的本地google默认应用程序凭据(https://developers.google.com/identity/protocols/application-default-credentials)?
我的用例:
如果我能告诉"docker run"将主机google默认应用程序凭据传递给docker镜像,那将是很好的.
google-authentication google-cloud-platform google-cloud-sdk
我们的大部分工作都使用 Docker 容器,包括在我们自己的机器上进行开发。这些是短暂的(例如,每次我们运行测试时都开始)。
对于 AWS,身份验证很容易——我们在我们的环境中有我们的密钥,这些密钥被传递到容器。
我们开始使用 Google Cloud 服务,认证路径似乎比 AWS 更难。在进行本地开发时,gcloud auth login效果很好。但是在临时容器中工作时,每次都需要登录过程,而且我还没有找到一种使用 a) 环境变量或 b) 映射卷来持久化用户凭据的方法——这是将数据传递给的两种方式容器。
据我所知,唯一的途径是使用服务帐户。但我认为每个人都需要自己的服务帐户,并且需要不断更新该帐户的权限以使其与自己的保持一致。
有没有更好的办法?
我已经安装了 Google Cloud SDK 并希望我正在编写的代码通过 pylint。不幸的是,每当我从 google.* 导入任何东西时,我都会收到一个错误:
E: 10, 0: No name 'cloud' in module 'path/to/my/current/module.google' (no-name-in-module)
E: 10, 0: Unable to import 'google.cloud' (import-error)
Run Code Online (Sandbox Code Playgroud)
版本:
$: pylint --version
pylint 1.7.0,
astroid 1.5.0
Python 2.7.6 (default, Oct 26 2016, 20:30:19)
[GCC 4.8.4]
Run Code Online (Sandbox Code Playgroud)
如果我在 pylint 中放置一个钩子来打印出 sys 路径,我将没有任何有趣的东西。google-cloud-sdk 在,/usr/local/lib/python2.7/dist-packages所以它应该能够找到它。
['/usr/lib/python2.7', '/usr/lib/python2.7/plat-x86_64-linux-gnu', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/dist-packages', '/usr/local/lib/python2.7/dist-packages/pylint-1.7.0-py2.7.egg', '/usr/local/lib/python2.7/dist-packages/backports.functools_lru_cache-1.3-py2.7.egg', '/usr/local/lib/python2.7/dist-packages/configparser-3.5.0-py2.7.egg', '/usr/local/lib/python2.7/dist-packages/singledispatch-3.4.0.3-py2.7.egg', '/usr/local/lib/python2.7/dist-packages/editdistance-0.3.1-py2.7-linux-x86_64.egg', '/usr/local/lib/python2.7/dist-packages/mccabe-0.6.1-py2.7.egg', '/usr/local/lib/python2.7/dist-packages/astroid-1.5.0-py2.7.egg', '/usr/local/lib/python2.7/dist-packages/wrapt-1.10.10-py2.7-linux-x86_64.egg', '/usr/local/lib/python2.7/dist-packages/lazy_object_proxy-1.2.2-py2.7-linux-x86_64.egg', '/usr/lib/python2.7/dist-packages']
Run Code Online (Sandbox Code Playgroud)
有谁知道为什么它会在我的本地路径中查找“google”模块以及如何修复它?
更新有关我的环境的更多详细信息:
有问题的 Google Cloud SDK 模块位于:
/usr/local/lib/python2.7/dist-packages/google
如果我ls该目录显示:
api auth …
我收到“解压缩失败:安装 Google Cloud SDK 时打开 zip 文件时出错”的消息,
我使用的是 Windows 7,64 位。我也检查了压缩/解压缩软件,它工作正常。这是错误
有人可以帮忙吗。
我想在我的项目中添加一个google.cloud.storage依赖项,因此我尝试使用
pip install --upgrade google-cloud-storage
使用dev_appserver再次运行我的应用程序,它向我显示我的gcloud组件需要更新.好的,gcloud components update
在我的src/__init__.py文件中,我得到的代码告诉gcloud在哪个文件夹中查找依赖项,如下所示:
from google.appengine.ext import vendor
vendor.add('src/libs')
Run Code Online (Sandbox Code Playgroud)
除了我收到错误之外,所有依赖项都已正确安装 ImportError: No module named google.oauth2
PS:我的应用正在使用OAuth2来保护对API的访问.在我进行组件更新之前它工作正常,现在即使我回滚代码,删除libs文件夹并再次安装依赖项,我仍然得到No模块错误,似乎dev_appserver没有在libs中寻找那个依赖项文件夹!
这是结果gcloud --version:
Google Cloud SDK 188.0.1
app-engine-python 1.9.66
app-engine-python-extras 1.9.63
bq 2.0.28
core 2018.02.08
gsutil 4.28
Run Code Online (Sandbox Code Playgroud)
这是追溯:
Traceback (most recent call last):
File "/home/login/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 240, in Handle
handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
File "/home/login/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 299, in _LoadHandler
handler, path, err = LoadObject(self._handler)
File "/home/login/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 96, in LoadObject
__import__(cumulative_path)
File "/home/headless/Documents/Projects/meterFleet/app-backend/src/main.py", line 5, in …Run Code Online (Sandbox Code Playgroud) python google-app-engine google-cloud-platform google-cloud-sdk
Google Cloud SDK安装过程在我的计算机(MAC)上失败,并让我跟踪堆栈跟踪.
Traceback (most recent call last):
File "/Users/ttn/Desktop/google-cloud-sdk/bin/bootstrapping/install.py", line 218, in <module>
main()
File "/Users/ttn/Desktop/google-cloud-sdk/bin/bootstrapping/install.py", line 203, in main
sdk_root=bootstrapping.SDK_ROOT,
File "/Users/ttn/Desktop/google-cloud-sdk/lib/googlecloudsdk/core/platforms_install.py", line 452, in UpdateRC
completion_update, path_update, rc_path, sdk_root, host_os).Update()
File "/Users/ttn/Desktop/google-cloud-sdk/lib/googlecloudsdk/core/platforms_install.py", line 214, in Update
self.path, rc_contents, source_line=self._GetSourceLine())
File "/Users/ttn/Desktop/google-cloud-sdk/lib/googlecloudsdk/core/platforms_install.py", line 167, in _GetRcContents
filtered_contents=filtered_contents, line=line)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 197: ordinal not in range(128)
Run Code Online (Sandbox Code Playgroud)
这里有更多细节:
系统的默认python版本
python -V
Python 3.6.1 :: Anaconda custom (x86_64)
Run Code Online (Sandbox Code Playgroud)
适用于Cloud SDK的Python版本.
echo $CLOUDSDK_PYTHON
/usr/bin/python2.7
Run Code Online (Sandbox Code Playgroud)
检查gcloud命令 …
我正在尝试在本地运行气流。我的 DAG 有一个 BigQueryOperator,我想使用云 sdk 进行身份验证。我运行“gcloud auth application-default login”以获得带有凭据的 json 文件。我尝试测试我的 Dag 运行命令:
airflow test testdag make_tmp_table 2019-02-13我收到错误消息“提供用户项目时必须对用户进行身份验证”
如果我不使用云 sdk,而是使用具有 BigQuery 管理员权限的服务帐户,它可以工作,但我需要通过云 sdk 使用身份验证。
有谁知道这个错误消息是什么意思或者我如何运行airflow并使用云sdk进行身份验证?
我使用以下来源来尝试了解如何在本地使用 BigQueryOperators 运行气流。 https://medium.com/@jbencina/local-testing-with-google-cloud-composer-apache-airflow-75d4213d2893
我在 Manjaro 上安装了 Visual Studio。上次系统更新后,Visual Studio 停止使用 Cloud Code 扩展。它会永久安装和卸载扩展并抛出下一条错误消息:
已安装 Cloud SDK,但发现其无效或已损坏,因此将其删除。正在尝试重新安装。在此过程中,托管依赖项将不可用。(安装尝试1)
我尝试重新安装 SDK、扩展和 Visual Studio。一切都没有改变。
visual-studio google-cloud-platform visual-studio-code google-cloud-sdk
我正在使用 Debian 从 Windows 11 上的 Linux 子系统运行各种 gcloud 计算命令。总的来说,效果很好。但是,有时 gcloud 命令根本不会返回,即使在几分钟后也是如此。有时会发生一次,有时会连续发生几次。这种情况经常发生,以至于我无法相信使用 gcloud 命令的 sh 脚本能够运行完成。这是一个例子。相同的命令运行 3 次没有问题,然后运行两次,然后再次运行:
root@DESKTOP-H8CB6JO:/mnt/c/Users/ddgun# gcloud compute instances list
NAME ZONE MACHINE_TYPE PREEMPTIBLE INTERNAL_IP EXTERNAL_IP STATUS
docker-2 us-east1-b e2-medium true 10.142.0.13 TERMINATED
docker-install us-east1-b e2-medium true 10.142.0.11 TERMINATED
root@DESKTOP-H8CB6JO:/mnt/c/Users/ddgun# gcloud compute instances list
NAME ZONE MACHINE_TYPE PREEMPTIBLE INTERNAL_IP EXTERNAL_IP STATUS
docker-2 us-east1-b e2-medium true 10.142.0.13 TERMINATED
docker-install us-east1-b e2-medium true 10.142.0.11 TERMINATED
root@DESKTOP-H8CB6JO:/mnt/c/Users/ddgun#
root@DESKTOP-H8CB6JO:/mnt/c/Users/ddgun# gcloud compute instances list
NAME ZONE MACHINE_TYPE PREEMPTIBLE INTERNAL_IP EXTERNAL_IP STATUS
docker-2 …Run Code Online (Sandbox Code Playgroud) google-compute-engine google-cloud-platform google-cloud-sdk windows-subsystem-for-linux wsl-2
google-cloud-sdk ×10
airflow ×1
pylint ×1
python ×1
python-2.7 ×1
windows-subsystem-for-linux ×1
wsl-2 ×1