google-app-enginecouchdbfauxton

How do I access Fauxton on the Google AppEngine platform?


I am creating an offline-first app on Google App Engine, with PouchDB as my local DB, and CouchDB as my remote DB. I have enabled CouchDB on Google AppEngine, and tried to go to the following URL:

https://[my-app-id].appspot.com:5984/_utils/

When I do that, I get the following:

This site can’t be reached
The connection was reset.
Try:
Checking the connection
Checking the proxy and the firewall
Running Windows Network Diagnostics
ERR_CONNECTION_RESET

So I tried enabling https access in the firewall settings.

**Firewalls**
[ ] Allow HTTP traffic
[Y] Allow HTTPS traffic

Still getting the error above.

I searched the documentation but cannot find anything helpful about how to access Fauxton (or Futon) on Google AppEngine. (The instructions only tell you how to access Fauxton on your local machine.)

I have generated a private and public key and logged in to the server via command line.

I have also followed the instructions about configuring the firewall to allow remote access, and have given it to my PC only.

None of this has enabled me to access https://[my-app-id].appspot.com:5984/_utils/

How do I access Fauxton on the Google AppEngine platform?


Update: according to the development tools in my browser, my PouchDB application has successfully created a database to sync to, but it isn't on the server:

screenshot of IndexedDB in Application tab

app.yaml file

application: [app-name]
version: 4
runtime: python27
api_version: 1
threadsafe: false

handlers:

- url: /
  script: main.py

- url: /(favicon)\.ico$
  static_files: \1.ico
  upload: /(favicon)\.ico
  application_readable: true

- url: /(package)\.json$
  static_files: \1.json
  upload: /(package)\.json
  application_readable: true

  # Serve images as static resources #
- url: /(.+\.(gif|png|jpg|json|ico))$
  static_files: \1
  upload: .+\.(gif|png|jpg|json|ico)$
  application_readable: true


- url: /index.html
  static_files: index.html
  upload: index.html 

- url: /licence.html
  static_files: licence.html
  upload: licence.html 

- url: /privacy.html
  static_files: privacy.html
  upload: privacy.html 

- url: /pouchnotes.manifest
  static_files: pouchnotes.manifest
  upload: pouchnotes.manifest  

- url: /manifest.json
  static_files: manifest.json
  upload: manifest.json

  # static directories #

- url: /img
  static_dir: img

- url: /js
  static_dir: js

- url: /css
  static_dir: css


libraries:
- name: webapp2
  version: "2.5.2"

EDIT: I posted this question in the Bitnami community forum (they provide CouchDB on Google App Engine)


Solution

  • I'm getting some help with this from the Bitnami Community Forum.

    Answers so far...

    (1) set up the firewall rules - make sure you have a permanent IP address for this.

    (2) set up SSH keys to access the server via command line

    (3) sudo /opt/bitnami/couchdb/scripts/ctl.sh stop couchdb

    (4) edit local.ini to point to 0.0.0.0 instead of 127.0.0.1 - but note that you will need to type cd /opt/bitnami/couchdb/etc/, press enter, and then sudo vi local.ini (rather than vi local.ini as the instructions suggest).

    (5) Log in to the external IP address. (Log in as admin and prefix commands with sudo)

    (NB: you don't need to run this in the GAE flexible environment)