问题标签 [google-cloud-shell]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
428 浏览

google-app-engine - Cloud Shell 中的 Google App Engine Python Remote API:没有名为 appengine.tools 的模块

我正在尝试在Google Cloud Shell中使用App Engine Remote API,但不断收到错误“ ImportError: No module named appengine.tools ”。

首先,我按照这些步骤将我的 Cloud Shell 设置为干净状态。

然后,我尝试使用以下命令启动 API shell:

首先,我收到错误“ -bash: /google/google-cloud-sdk/platform/google_appengine/google/appengine/tools/remote_api_shell.py: Permission denied ” 所以我导航到该文件并执行

然后,当我再次尝试该命令时,我得到了上面的 ImportError。

我查看了一些类似的线程(here)和(here),用户似乎报告说执行“sudo pip uninstall protobuf”解决了他们的问题,但这对我来说没有用。

另一个建议是将 App Engine SDK 添加到 PYTHONPATH,所以我尝试执行

但错误仍然存​​在。我认为这个问题反映在这里:

有没有办法快速解决这个问题,同时尽可能多地保留 Cloud Shell 的默认状态?由于 Cloud Shell 是短暂的,我想这个过程需要重复。

我已将我的应用程序配置为启用远程访问,但我认为我已经走得还不够远,无法解决这个问题。

所有 Gcloud 组件都是最新的,我想在我清理 Cloud Shell 状态时可以保证。

在命令前添加“python”或“python2”会导致相同的错误。

编辑添加完整的错误消息:

0 投票
1 回答
166 浏览

node.js - Google Transport Tacker Backend 教程正在超时,如何记录为什么?

我正在通过 Google Transport Tracker Backend关注本教程

我在“绘制巴士路线”部分,它正在超时。

我在终端中运行这个命令

它挂起并返回

处理行程 1 of 847timeout

这是代码:

包.JSON

GENERATE_PATHS.JSON

0 投票
1 回答
1280 浏览

python-3.x - 从在 Google Cloud Shell 中运行的 Python 打开浏览器

我正在 Python 3.6 上开发一个小脚本,我很可能会从 Google Cloud Shell 使用它。在所述脚本中,我想做一些 API 调用,然后用 URL 打开 Web 浏览器,这些调用的结果。以下代码适用于我测试过的其他环境,但不适用于 Cloud Shell:

有没有办法让 Python '告诉' Cloud Shell 从它运行的地方使用浏览器?即:如果我使用 Chrome 打开 Cloud Shell,有什么方法可以在 Chrome 中打开链接?它是否与网络浏览器或其他库无关。

0 投票
1 回答
2890 浏览

google-app-engine - Google App Engine 项目根位置

为看似显而易见的问题道歉,但我认为答案可能对其他人有所帮助。我终生无法在 Google App Engine VM (Cloud Shell) 中的文件路径上找到文档,我可以在其中找到提供的静态文件。我需要从私人 github 存储库中提取最新的上游更改。

请注意,我在 VM 中的其他位置导航,甚至重新启动会话并没有像我预期的那样将我置于 VM 内的默认项目根路径中。

0 投票
2 回答
1157 浏览

asp.net-core - 在 Google Cloud Shell 中构建 .NET Core 2.1 应用程序失败

我创建了一个 ASP.NET Core 2.1应用程序,我正在尝试将其部署到Google Cloud Platformdotnet build在本地使用它构建得很好。

不过,我无法通过 Google Cloud Shell 构建它。运行dotnet --version确认 Google Cloud Shell 已安装 .NET Core 2.0

运行gcloud app deploy会启动应用程序的部署,但我从日志中收到一个神秘错误:

步骤#0:状态:为 gcr.io/gcp-runtimes/aspnetcorebuild@sha256:ad1b788a9b4cca75bb61eb523ef358ca059c4bd208fba15a10ccc6acab83f49a 下载更新的图像

步骤#0:未找到应用程序的 .deps.json 文件已完成步骤#0

错误:构建步骤 0“gcr.io/gcp-runtimes/aspnetcorebuild@sha256:ad1b788a9b4cca75bb61eb523ef358ca059c4bd208fba15a10ccc6acab83f49a”失败:退出状态 1

我的印象是 GCP 默认支持 .NET Core 2.1容器,所以我没有包含Dockerfile

我正在尝试部署到灵活的环境,这是我的app.yaml文件:

我需要创建自定义 Docker 容器吗?还是有其他方法可以在 Google Cloud Shell 中获得对 .NET Core 2.1 的支持?

编辑:现在我已经安装了谷歌云工具,以便gcloud app deploy在运行dotnet publish.

0 投票
2 回答
685 浏览

google-cloud-platform - Google Cloud Datalab 和 Cloud Shell 访问问题

我最近创建了一个谷歌云帐户,该帐户从 .com.au 电子邮件地址迁移到 .com 电子邮件地址。现在,当我登录到 Google Cloud Console 时,我正确地看到了我的 .com 帐户并且我在 IAM 中的权限是所有者,但是,此迁移似乎没有传播到我的 Google Cloud shell 和预先存在的 Datalab 实例。

当我尝试这样做时:

我让云外壳连接并声明我可以:

但是,当我转到端口 8081 时,出现错误:

这很奇怪,因为在 Google Cloud Platform 中,它清楚地显示我以 xxx.com 的身份登录

如果我执行“datalab create newbook”,则会出现同样的错误……计算引擎实例已创建,但是当我连接到端口 8081 时,它不允许我访问(与上述相同的错误)。

唯一的例外是,如果我使用我的 XXX.com 地址对本地 shell SDK 进行身份验证并且已经完成:

然后我可以运行 datalab connect test 1 而无需任何用户检查。所以只有谷歌云平台不允许连接。

cloud shell 和代码编辑器 Beta 都存在与上述相同的错误,即即使平台可以清楚地看到区别。我宁愿不删除我的整个个人资料并重新开始,所以任何想法都会受到赞赏。

0 投票
1 回答
213 浏览

git - 从 Google Cloud Shell 到外部服务器的出站 SSH

我正在使用 gcloud App Engine并想使用 Google Cloud Shell 从我的私有 git 服务器克隆一个 git 存储库,但是,由于某种原因,我遇到了连接超时。

这就是 ssh 给我的:

*主机、域、IP 和端口因明显原因而更改

需要考虑的事项:

  1. 我的 git 服务器已启动并正在运行,我可以使用相同的命令从任何其他机器连接到它
  2. 我的 git 服务器日志没有显示来自 gcloud 的任何传入连接
  3. 除了 App Engine,我没有使用任何东西,也不想配置 Compute Engine

有没有人发现同样的问题并想分享解决方案?

0 投票
1 回答
666 浏览

google-cloud-platform - 气流 S3ToGoogleCloudStorageOperator 设备上没有剩余空间

我正在尝试使用 Airflow 及其运算符 S3ToGoogleCloudStorageOperator 将大文件从 S3 传输到 GCP。我已经能够传输 400 Mb 的文件,但如果我尝试更大,我会失败:2Gb 我收到以下错误:

[2018-09-19 12:30:43,907] {models.py:1736} 错误 - [Errno 28] 设备回溯上没有剩余空间(最近一次调用最后一次):
文件“/home/jma/airflow/env/lib /python3.5/site-packages/airflow/models.py”,第 1633 行,在 _run_raw_task 结果 = task_copy.execute(context=context)
文件“/home/jma/airflow/env/lib/python3.5/site- packages/airflow/contrib/operators/s3_to_gcs_operator.py”,第 156 行,在执行 file_object.download_fileobj(f)
文件“/home/jma/airflow/env/lib/python3.5/site-packages/boto3/s3/inject .py”,第 760 行,在 object_download_fileobj ExtraArgs=ExtraArgs,Callback=Callback,Config=Config)
文件“/home/jma/airflow/env/lib/python3.5/site-packages/boto3/s3/inject.py” ,第 678 行,在 download_fileobj 中返回 future.result()
文件“/home/jma/airflow/env/lib/python3.5/site-packages/s3transfer/futures.py”,第 73 行,结果返回 self._coordinator.result()
文件“/home/jma/airflow/ env/lib/python3.5/site-packages/s3transfer/futures.py”,第 233 行,结果引发 self._exception
文件“/home/jma/airflow/env/lib/python3.5/site-packages/s3transfer /tasks.py",第 126 行,在调用中返回 self._execute_main(kwargs)
文件 "/home/jma/airflow/env/lib/python3.5/site-packages/s3transfer/tasks.py",第 150 行,在_execute_main return_value = self._main(**kwargs)
文件“/home/jma/airflow/env/lib/python3.5/site-packages/s3transfer/download.py”,第 583 行,在 _main fileobj.write(data)
func_wrapper 中的文件“/home/jma/airflow/env/lib/python3.5/tempfile.py”,第 622 行 return func(*args, **kwargs) OSError: [Errno 28] No space left on device

DAG 的完整代码可以在另一个 SO question中找到。

该文件不会直接从 S3 传输到 GCP,而是下载到运行 Airflow 的机器上。查看痕迹,似乎 boto 可能是负责任的,但仍然无法弄清楚如何解决该问题,即为要临时复制的文件分配一个文件夹。

我想移动非常大的文件,如何设置以便没有限制?

我在 GCP 中从 Google Cloud Shell 运行 Airflow 1.10,我在主目录中有 4 Gb 的可用空间(要移动的文件是 2 Gb)

0 投票
2 回答
328 浏览

php - 内置服务器 PHP 的 Google Cloud Shell 问题 - 无法连接到端口 8080 上的 Cloud Shell

我无法在 Google Cloud Shell 上使用我的简单 index.php 文件。我用命令启动我的服务器php -S localhost:8080 -t test/。在此之前,我在测试文件夹之前导航。我单击右上角的 Web 预览并得到错误:无法连接到端口 8080 上的 Cloud Shell可能是什么问题?

0 投票
2 回答
1158 浏览

google-cloud-shell - 如何在 Cloud Shell 上获得更多磁盘空间?

我正在使用 Cloud Shell 将应用程序部署到 GKE,并且在构建过程中磁盘空间不足:

...AIUI,/dev/sda1 是底层VM的磁盘,好像是31G。它已满,导致skaffold run失败。我可以(临时|永久)在该磁盘上获得更多空间吗?