Managed VM node.js runtime

88 views
Skip to first unread message

Hemanth Kumar

unread,
Aug 24, 2015, 5:39:34 AM8/24/15
to Google App Engine
Hi
I am getting following error when trying to deploy my app on the app engine.

ERROR: Failed to connect to Docker Daemon due to: ('Connection aborted.', error(10061, 'No connectio
n could be made because the target machine actively refused it'))

Thw error is shown after these lines
Provisioning remote build service.
Copying certificates for secure access. You may be prompted to create an SSH keypair.

I am pasting the content of my docker file

# The image is based on the Debian Wheezy distribution.
FROM google/debian:wheezy

# Fetch and install Node.js
RUN apt-get update -y && apt-get install --no-install-recommends -y -q curl python build-essential git ca-certificates
RUN mkdir /nodejs && curl http://nodejs.org/dist/v0.10.29/node-v0.10.29-linux-x64.tar.gz | tar xvzf - -C /nodejs --strip-components=1

# Add Node.js installation to PATH, and set
# the current working directory to /app
# so future commands in this Dockerfile are easier to write
ENV PATH $PATH:/nodejs/bin
WORKDIR /app

# Copy the file package.json from your app's /app directory to the Docker
# image. (See note below regarding image caching and dependencies.)
ADD package.json /app/

# Run npm (node’s package manager) to install packages specified in
# package.json
RUN npm install

# Adds the rest of the application source. Since this is a node.js app
ADD . /app

# No further source transformations are performed.
# It is possible to install and run additional tooling such as CSS
# minifiers.

# Specify that npm start is the process that will run in the Docker container. The app should listen on port 8080.
ENTRYPOINT ["/nodejs/bin/npm", "start"]

This is the same file provided in app engine documentation for node.js runtime.

Patrice (Cloud Platform Support)

unread,
Aug 24, 2015, 10:55:03 AM8/24/15
to Google App Engine
Hi,

To get this error, what command are you using to deploy?

Could you also copy your app.yaml, just so I can make sure everything is good there as well?

Do you have any firewall between you and the Internet? This could potentially be an issue as well.

Cheers

Hemanth Kumar

unread,
Aug 25, 2015, 2:19:08 AM8/25/15
to Google App Engine
Hi

Thanks for replying.
This is my app.yaml file

# Copyright 2015, Google, Inc.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# [START runtime]
runtime: custom
vm: true
api_version: 1
module: default
# [END runtime]

# [START resources]
resources:
  cpu: .5
  memory_gb: 1.3
  disk_size_gb: 10
# [END resources]

# [START scaling]
automatic_scaling:
  min_num_instances: 1
  max_num_instances: 5
  cool_down_period_sec: 60
  cpu_utilization:
    target_utilization: 0.5
# [END scaling]

env_variables:
  NODE_ENV: production

# Temporary workaround for a Cloud SDK bug.
# Ensures that node_modules directory and any .log files are not uploaded (the
# other entries are the default values for skip_files). This will skip any Unix
# hidden files (such as the .git directory)
skip_files:
 - ^(.*/)?#.*#$
 - ^(.*/)?.*~$
 - ^(.*/)?.*\.py[co]$
 - ^(.*/)?.*/RCS/.*$
 - ^(.*/)?\..*$
 - ^(.*/)?.*/node_modules/.*$
 - ^(.*/)?.*\.log$

The command that i used to deploy is 
gcloud preview app deploy app.yaml --docker-build remote --set-default

I have already disabled the window firewall.There is no other firewall.

Patrice (Cloud Platform Support)

unread,
Aug 26, 2015, 1:07:48 PM8/26/15
to Google App Engine
Hi again,

The proper syntax for your command would be "--docker-build=remote" I assume this is what you're running?

In general, a "connection refused" is something at the network level, so making sure all firewalls are disabled, both on the machine you're creating (if your managedVM is "user-managed"), and the network that emanates the call, should fix this.

Good luck!
Reply all
Reply to author
Forward
0 new messages