Get connected

CloudWall needs CouchDB to show all its features, so you need CouchDB somewhere. There are several common scenarios, that are described step by step.

Your own CouchDB

Nearly any web-connected machine can run CouchDB. It works pretty fine even in a very lean environment — 512Mb, Atom and so on. CouchDB is very reliable and power-off resistant.

1. Install CouchDB

Pre-built packages

Download and install appropriate distributive of CouchDB to your server. It takes minute or two, really. Ensure CouchDB launches on OS start.

Note, that you need 1.7.1+ version of CouchDB, and persistent web connection with static IP, and better with bound domain name. If you decide to keep original 5984 Couch port untouched, you should open this port for net connections.

With pre-built CouchDB versions prior to 2.3 you will not be able to run demo CMS in full power since it requires JS rewrites, however CloudWall itself works fine on any Couch. 

Custom CouchDB builds

There are several ways to have CouchDB with full JS rewrites. You may install CouchDB from sources, or from patched package. 

Patched packages only have JS rewrites as addition, other code is same.

2. Replace admin panel

When CouchDB is installed, type http://localhost:5984/_utils to run default admin panel, Futon or Fauxton. Consider to install Photon immediately, however default admin panels are also ok. Photon is just nicer and gives good sense of CloudWall, click to zoom:

3. Configure auth and CORS

Auth config is required to avoid annoying browser popups when bowsers connects to Couch. CORS is a feature turning off end users’ cross origin sandboxes.

Both are tuned using link Configuration in Futon right panel. Go to config and edit/add some config vars. They are:

[cors]

credentialstrue
headersaccept, authorization, content-type, origin
methodsGET, POST, PUT, DELETE, OPTIONS, HEAD
originshttp:// put_your_domain_here

[couch_httpd_auth]

require_valid_user
false

[httpd]

enable_corstrue
 secure_rewritesfalse 

If you are using Photon as an admin panel, you can do all corrections in a single copy/paste. Just extend config with this JSON:

4. Install and run CloudWall

Process is one copy-paste long in general and described in Quick start manual.

CouchDB on Amazon EC2

There is nothing special about installing CouchDB to Amazon EC2 instance — just deploy and run instance, download CouchDB and install. Open 5984 port and do all the steps above. 

If you have 10–20 users — T2.micro is really enough. May be you’ll need to extend storage — default is about 8Gb.

Smileupps

You can use Smileupps CouchDB instances without any specialties, just deploy an instance and set it up as regular CouchDB. Then you can install CloudWall using replication as described in Quick start manual.

Note, that Smileupps charges on per-request basis, so keeping replications continuous may be costly.

Notes 

Keeping your data synced is a good practice since CloudWall is permanent beta, it is built on top of many open-source libraries. Also it is an open platform — you can receive code, that impacts system stability. 

 Be smart and get your local buckets synced with external CouchDB if you keep sensitive data in browser. 

Real-time continuous replication can be traffic-consuming — so if you work with docs, that need no immediate propagation, set replication interval to number greater than zero. This approach also helps to save money if you are connected to per-request charging services, like Cloudant or Smileupps.