================================================================================ # Install CouchDB Database on Pi-2 Running Raspbian Jessie # These instructions are based on those found on this web page: ( http://jeeonthepi.blogspot.com/2015/09/installing-couchdb-161-on-raspberry-pi.html ) ========================================================================================== ########################################################################################## Install Erlang (https://www.erlang-solutions.com/downloads/download-erlang-otp) ########################################################################################## # 1. Adding repository entry # Add the following line to your /etc/apt/sources.list: $ wget http://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb $ sudo dpkg -i erlang-solutions_1.0_all.deb ## when prompted enter "jessie" $ sudo nano /etc/apt/sources.list # Uncomment line below and save the file: #deb-src http://archive.raspbian.org/raspbian/ jessie main contrib non-free rpi $ sudo apt-get update # Next, add the Erlang Solutions public key for apt-secure using following commands: $ wget http://packages.erlang-solutions.com/debian/erlang_solutions.asc $ sudo apt-key add erlang_solutions.asc # 2. Installing Erlang # Refresh the repository cache and install the erlang package. $ sudo apt-get update $ sudo apt-get install erlang # Development headers for spidermonkey lib $ sudo apt-get install libmozjs185-dev # Dev files for libcurl (openSSL) $ sudo apt-get install libcurl4-openssl-dev # Dev files for icu (Unicode and Locales) $ sudo apt-get install libicu-dev # Most of this below is needed to install the CouchDB Documentation (as far as I know) $ sudo apt-get install help2man $ sudo apt-get install install-info $ sudo apt-get install texlive-latex-base $ sudo apt-get install texlive-pictures $ sudo apt-get install python-pygments $ sudo apt-get install python-sphinx $ sudo apt-get install texinfo ########################################################################################## Create couchDB user account ########################################################################################## $ sudo useradd -d /var/lib/couchdb couchdb $ sudo mkdir -p /usr/local/{lib,etc}/couchdb /usr/local/var/{lib,log,run}/couchdb /var/lib/couchdb $ sudo chown -R couchdb:couchdb /usr/local/{lib,etc}/couchdb /usr/local/var/{lib,log,run}/couchdb $ sudo chmod -R g+rw /usr/local/{lib,etc}/couchdb /usr/local/var/{lib,log,run}/couchdb ########################################################################################## Install CouchDB ########################################################################################## # Download source and unpack $ wget http://ftp-stud.hs-esslingen.de/pub/Mirrors/ftp.apache.org/dist/couchdb/source/1.6.1/apache-couchdb-1.6.1.tar.gz $ tar xzf apache-couchdb-*.tar.gz # Change into the couchDB directory $ cd apache-couchdb-1.6.1 #Configure the build $ ./configure --prefix=/usr/local --with-js-lib=/usr/lib --with-js-include=/usr/include/js --enable-init # running make and make install $ make && sudo make install # Install hung here: ! Font T1/cmr/m/n/10=ecrm1000 at 10.0pt not loadable: Metric (TFM) file not fou nd. relax l.100 \fontencoding\encodingdefault\selectfont ? # I just hit "return" and it finished up... ########################################################################################## # Start couchDB ########################################################################################## $ sudo ln -s /usr/local/etc/init.d/couchdb /etc/init.d/couchdb $ sudo /etc/init.d/couchdb start $ sudo update-rc.d couchdb defaults # see if its running... $ curl http://127.0.0.1:5984/ # If it is running you'll see a message like this: {"couchdb":"Welcome","uuid":"ca6622aa3e676b51ef8245ae473454cb","version":"1.6.1","vendor":{"version":"1.6.1","name":"The Apache Software Foundation"}} ########################################################################################## # Configure couchDB ########################################################################################## # Open local.ini: $ sudo nano /usr/local/etc/couchdb/local.ini # Find the [httpd] section, uncomment the port # and bind_address and set the bind_address to the IP of # your Pi to make couchDB accessible within your network [httpd] port = 5984 bind_address = YOUR_IP_ADDRESS # Example: bind_address = 192.168.0.211 # make couchdb user (created above) owner of local ini-file $ sudo chown couchdb:couchdb /usr/local/etc/couchdb/local.ini # re-boot your Pi and open Futon in your web browser: $ sudo reboot $ sudo /etc/init.d/couchdb start # YOUR_IP_ADDRESS:5984/_utils/ # example: http://192.168.0.211:5984/_utils/ # Or try the new "Fauxton" interface: # example: http://192.168.0.211:5984/_utils/fauxton/ # To Restart CouchDB $ sudo pkill -f couchdb $ sudo /etc/init.d/couchdb restart # Enabling CORS on CouchDB $ npm install -g add-cors-to-couchdb # $ add-cors-to-couchdb $ add-cors-to-couchdb http://192.168.0.211 -u pi -p pi ================================================================================ # Pi-2 Node.js (https://learn.adafruit.com/node-embedded-development/installing-node-dot-js) ================================================================================ $ curl -sLS https://apt.adafruit.com/add | sudo bash $ sudo apt-get install node $ node -v ================================================================================ # That's all a got! ##### =========================================================================