Tag: 谷歌应用程序引擎

可能? 如何在Google托pipe虚拟机环境中设置VNC

我使用的是Java,但这不一定是Java的问题。 Google的“java-compat”图片是Debian(3.16.7-ckt20-1 + deb8u3〜bpo70 + 1(2016-01-19))。 这是我的Dockerfile: FROM gcr.io/google_appengine/java-compat RUN apt-get -qqy update && apt-get qqy install curl xvfb x11vnc RUN mkdir -p ~/.vnc RUN x11vnc -storepasswd xxxxxxxx ~/.vnc/passwd EXPOSE 5900 ADD . /app 在pipe理控制台中,我创build了一个防火墙规则来打开5900.最后,我使用以下命令在“_ah / start”启动钩子中调用vnc服务器本身: x11vnc -forever -usepw -create 所有似乎安装正确,但我无法连接TightVNC。 我在pipe理控制台中使用公用(短暂)IP地址,后跟:5900(由于某种原因,TightVNC需要两个冒号)。 我收到一条消息,说服务器拒绝了连接。 实际上,当我尝试telnet到5900端口时,它被阻止。 接下来,我SSH进入容器机器,当我用wget xxx.xxx.xxx.xxx:5900testing容器上的端口时,我得到一个连接。 所以在我看来,集装箱不接受港口5900连接。我是否正确? 是否有可能打开端口和路由我的VNC客户端到docker集装箱? 任何帮助赞赏。 为什么我不能使用计算引擎。 只是为了抢占一些关于使用谷歌的计算引擎环境,而不是托pipe虚拟机的意见。 我大量使用我的代码中的数据存储和任务队列。 我不认为这些可以在计算引擎上运行(或者本地/有效地运行)。 但是我可以把它作为一个单独的问题提出来。 […]

Google App Engine中的MongoDB实例可以灵活地处于状态吗?

现在我已经设法使用自定义的Dockerfile将我的一个服务(用PHP编写的API)部署到GAE,我想部署另一个将成为Mongodb数据库的服务,以便我的PHP API可以将数据存储在Mongodb 。 因为我想在灵活的GAE中构build所有的微服务,所以我正在考虑使用相同的过程,即部署另一个定制的Dockerfile来构build我的Mongodb实例。 现在我想知道这是否是正确的方法? 在这种情况下,我担心我的Mongodb事件是有状态的。 在重启实例或部署其他版本时,数据是否会丢失?对于我正在尝试执行的操作,是否还有另一种更推荐的方法? PS:我不想使用Google数据存储,主要是因为我使用了Symfony PHP框架以及许多有用的软件包来与Mongo进行交互。

谷歌应用程序引擎configuration特定的图像/快照/docker?

这里是我的worker.yaml runtime: python27 api_version: 1 threadsafe: true vm: true service: worker env_variables: PYTHON_ENV: lab network: instance_tag: testing name: my-network handlers: – url: /.* script: worker.app login: admin 我有一些依赖关系,例如openCV ,在一个非常具体的configurationboost 。 我有一台机器configuration,我有它的快照和图像。 我怎样才能configurationyaml(或其他地方)告诉应用引擎使用这个图像来运行代码?

如何连接到App Engine定制运行时Dockerfile中的SQL实例?

有很多的文件,但没有具体的Dockerfiles(或我错过了)。 我的app.yaml文件: runtime: custom env: flex env_variables: MYSQL_DSN: mysql:unix_socket=/cloudsql/project-name:europe-west1:test001;dbname=db001 MYSQL_USER: root MYSQL_PASSWORD: 'qwerty' 我的Dockerfile: FROM ubuntu:16.04 ARG dbuser ENV dbuser ${MYSQL_USER} ARG dbpass ENV dbpass ${MYSQL_PASSWORD} ARG dbhost ENV dbhost ${MYSQL_DSN} RUN apt-get update RUN apt-get install mysql-client RUN mysql -h ${dbhost} -u ${dbuser} -p${dbpass} -e "CREATE DATABASE 'test';" 文档如下: https://cloud.google.com/appengine/docs/flexible/nodejs/configuring-your-app-with-app-yaml#Node.js_app_yaml_Defining_environment_variables https://cloud.google.com/appengine/docs/php/cloud-sql/

泊坞内的GAE。 不能暴露8080

我有一个GAE应用程序和一群人在工作,这样可以节省人们设置所有依赖关系的麻烦,而且我希望允许他们在Docker容器中运行gae开发服务器。 我的dockerfile结束于: CMD dev_appserver.py app_localhost.yaml 而我的docker撰写就像: version: '3' services: my_image: build: ./my_image image: my_image ports: – "8080:8080" – "8000:8000" volumes: – ./my_image:/usr/src/ build设这个工作正常。 而且用docker-compute up运行它似乎也能正常工作。 我的意思是,它有友好的输出说默认模块是可以在8080和所有的好东西。 但是,如果我通过铬访问localhose:8080我得到ERR_SOCKET_NOT_CONNECTED。 如果我尝试curl它,我得到curl: (56) Recv failure: Connection reset by peer 。 这一切运行良好,并在容器外运行时可访问。 docker ps 56 ↵ CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 3a2ae48f1f66 waxed_backend_image "/bin/sh -c 'dev_a…" 9 […]

在Jelastic上运行Appscale

您好,我们已经创build了一个Jelastic Docker环境,我们要在其上运行Appscale( https://www.appscale.com/try-appscale ): root@node1234-appscale:~# appscale up Executing ssh-copy-id for host: 1.8.1.6 root@1.8.1.6's password: root@1.8.1.6's password: root@1.8.1.6's password: root@1.8.1.6's password: 我想知道为什么我们使用相同的密码login到SSH不会在Docker中工作?

用docker运行谷歌数据存储模拟器

我正在尝试与docker创build数据存储模拟器,并按照https://cloud.google.com/datastore/docs/tools/datastore-emulator 我还使用了云端SDK https://hub.docker.com/r/google/cloud-sdk/ 我能够创build模拟器并进行身份validation,但是当我尝试访问它throght localhost:8000 / datastore它给了我“未find”的回应, 我怎样才能访问数据存储数据? 我用来创build它的命令是: docker run -p 8000:8000 google/cloud-sdk gcloud beta emulators datastore start –project=pname –host-port localhost:8000 –no-store-on-disk

GAE托pipe虚拟机 – 如果您的项目名称太长,则无法部署

目前,GAE托pipe虚拟机function对于名称超过27个字符的任何项目都会中断。 根本问题是,Docker将图像命名空间限制在4-30个字符之间。 这已经修复( https://github.com/docker/docker/issues/10392 ),但仍在等待发布。 看起来,当将托pipe虚拟机部署到GAE时,命名空间是从您的项目名称加上_m_前缀自动生成的。 尝试部署虚拟机时会导致错误: DEBUG: "POST /v1.10/images/gcr.io/_m_<my project name>/<my project name>.default.20150330t140211/push HTTP/1.1" 500 111 INFO: Exception 500 Server Error: Internal Server Error ("Invalid namespace name (_m_<my project name>). Cannot be fewer than 4 or more than 30 characters.") thrown in ProgressHandler. Retrying. GAE gcloud工具通过一些自动截断或哈希scheme来尊重基础限制是显而易见的解决scheme。 有没有人知道这个方法? 或者我必须等待Google修复或者Docker发布一个新版本,然后Google才能更新?

如何克服这个500服务器内部错误试图拉托pipe虚拟机的谷歌/ appengine-java图像?

我一直在尝试从昨天开始运行gcloud –verbosity debug preview app setup-managed-vms ,但没有成功。 我不是唯一一个有这个问题,但其他人发布,通过谷歌(不是在SO)发现,从来没有回答。 这是堆栈跟踪,详细设置为debugging级别(很长,但在某个时间2行开始重复自己的50倍): $ gcloud –verbosity debug preview app setup-managed-vms DEBUG: Running gcloud.preview.app.setup-managed-vms with _Args({'base_image_bucket': 'containers-prod', 'docker_host': None, 'format': None, 'h': None, 'help': None, 'image_version': 'latest', 'markdown': None, 'project': None, 'quiet': None, 'shell': None, 'user_output_enabled': None, 'verbosity': 'debug'}). DEBUG: Detected docker environment variables: DOCKER_HOST=tcp://192.168.59.103:2376, DOCKER_CERT_PATH=/Users/Domenico/.boot2docker/certs/boot2docker-vm, DOCKER_TLS_VERIFY=1 INFO: Starting new […]

如何禁用Docker容器重新启动“gcloud预览应用程序运行”

我用gcloud preview app run .启动我的Nodejs应用gcloud preview app run . 命令。 每次我更新项目中的任何文件, gcloud重新启动Docker容器。 它总是需要很多时间。 在Google Compute Engine文档中,我find了restartPolicyconfiguration,但试图将其添加到我的app.yaml ,运行该应用程序时会引发错误: 错误:configuration无效:AppInfoExternaltypes的对象的意外属性“restartPolicy”。 可能意味着它不应该在Google云上使用自定义虚拟机。 我想知道是否有办法告诉gcloud禁用自动的Docker容器重新启动,但是当我需要的时候手动设置呢?