Spatial Pattern Analysis with CartoDB
From CUOSGwiki
Contents
- 1 Introduction
- 2 Install Guide
- 2.1 Add CartoDB GIS PPA
- 2.2 Add CartoDB Mapnik PPA
- 2.3 Add Mapnik Boost PPA
- 2.4 Add Chris Lea’s Nodejs Legacy PPA
- 2.5 Add CartoDB Redis PPA
- 2.6 Add CartoDB PostgreSQL PPA
- 2.7 Install unp
- 2.8 Install zip
- 2.9 Install GEOS
- 2.10 Install GDAL
- 2.11 Install JSON-C
- 2.12 Install PROJ
- 2.13 Install PostgreSQL
- 2.14 plpython is required for Python support
- 2.15 Install PostGIS
- 2.16 Install Ruby 1.9.1
- 2.17 Install Node.js
- 2.18 Install NPM
- 2.19 Install Redis
- 2.20 Install EASY INSTALL
- 2.21 Install Python dependencies
- 2.22 Install Varnish
- 2.23 Install Mapnik
- 2.24 Install CartoDB SQL API
- 2.25 Install Windshaft-cartodb
- 2.26 Install Vim
- 2.27 Running CartoDB
- 2.28 Browser
- 3 User Interface
- 4 Results
- 5 References
Introduction
Install Guide
git clone --recursive https://github.com/CartoDB/cartodb20.git
ADD CartoDB Personal Package Archives (PPAs)
Add CartoDB GIS PPA
sudo add-apt-repository ppa:cartodb/gis
Add CartoDB Mapnik PPA
sudo add-apt-repository ppa:cartodb/mapnik
Add Mapnik Boost PPA
sudo add-apt-repository ppa:mapnik/boost
Add Chris Lea’s Nodejs Legacy PPA
sudo add-apt-repository ppa:chris-lea/node.js-legacy
Add CartoDB Redis PPA
sudo add-apt-repository ppa:cartodb/redis
Add CartoDB PostgreSQL PPA
sudo add-apt-repository ppa:cartodb/postgresql
Install unp
sudo apt-get install unp
Install zip
sudo apt-get install zip
Install GEOS
sudo apt-get install libgeos-c1 libgeos-dev
Install GDAL
sudo apt-get install gdal-bin libgdal1-dev
Install JSON-C
sudo apt-get install libjson0 python-simplejson libjson0-dev
Install PROJ
sudo apt-get install proj-bin proj-data libproj-dev
Install PostgreSQL
sudo apt-get install postgresql-9.1 postgresql-client-9.1 postgresql-contrib-9.1 postgresql-server-dev-9.1
plpython is required for Python support
sudo apt-get install postgresql-plpython-9.1
Install PostGIS
cd /usr/local/src sudo wget http://download.osgeo.org/postgis/source/postgis-2.0.2.tar.gz sudo tar xzf postgis-2.0.2.tar.gz cd postgis-2.0.2 ./configure --with-raster --with-topology make make install
We are going to use the file manager and navigate to the following folder starting from the computer folder and ending with postgis-2.0.2
/usr/local/sr/postgis-2.0.2
Create a new empty document, name/label it es.sh
Open the folder, paste and save the following, and finally close it.
#!/usr/bin/env bash POSTGIS_SQL_PATH='pg_config --sharedir'/contrib/postgis-2.0 createdb -E UTF8 template_postgis createlang -d template_postgis plpgsql psql -d postgres -c \ "UPDATE pg_database SET datistemplate='true' WHERE datname='template_postgis'" psql -d template_postgis -f postgis/postgis.sql psql -d template_postgis -f spatial_ref_sys.sql psql -d template_postgis -f postgis/legacy.sql psql -d template_postgis -f taster/rt_pg/rtpostgis.sql psql -d template_postgis -f topology/topology.sql psql -d template_postgis -c "GRANT ALL ON geometry_columns TO PUBLIC;" psql -d template_postgis -c "GRANT ALL ON spatial_ref_sys TO PUBLIC;"
Back in the terminal, we are back where we started: sudo cd postgis-2.0.2
Run the following command
sudo chmod 777 es.sh
Change user to postgres
sudo su postgres
Run the following command
./es.sh
Install Ruby 1.9.1
sudo get-apt install ruby1.9.1
Install Node.js
sudo apt-get install nodejs=0.8.26-1chl1~precise1
Install NPM
sudo apt-get install npm=1.3.0-1chl1~precise1
Install Redis
sudo apt-get install redis-server
Install EASY INSTALL
sudo apt-get install python-setuptools
Install Python dependencies
cd cartodb20 sudo easy_install pip sudo pip install -r python_requirements.txt
Install Varnish
sudo apt-get install varnish
Install Mapnik
sudo apt-get install libmapnik-dev python-mapnik2 mapnik-utils
Install CartoDB SQL API
git clone git://github.com/CartoDB/CartoDB-SQL-API.git cd CartoDB-SQL-API git checkout master npm install
cd CartoDB-SQL-API cd config/environments/ mv development.js.example development.js
cd
cd CartoDB-SQL-API node app.js development
Install Windshaft-cartodb
git clone git://github.com/CartoDB/Windshaft-cartodb.git cd Windshaft-cartodb git checkout master npm install
cd config/environments/ mv development.js.example development.js
cd
cd Windshaft-cartodb node app.js development
Install Vim
sudo apt-get install vim
Running CartoDB
cd cartodb20
# NOTE: the default server port is 6379 redis-server
rvm use 1.9.2@cartodb --create && bundle install
mv config/app_config.yml.sample config/app_config.yml vim config/app_config.yml
mv config/database.yml.sample config/database.yml vim config/database.yml
echo "127.0.0.1 ${SUBDOMAIN}.localhost.lan" | sudo tee -a /etc/hosts sh script/create_dev_user ${SUBDOMAIN}
$ QUEUE=* bundle exec rake resque:work
$ bundle exec rails s -p 3000
Browser
You should now be able to access http://<mysubdomain>.localhost.lan:3000 in your browser and login with the password specified above.