Skip to main content

Application for serving and sharing geospatial data

Project description

.. image:: https://coveralls.io/repos/github/GeoNode/geonode/badge.svg?branch=master
:alt: Coverage Badge
:target: https://coveralls.io/github/GeoNode/geonode?branch=master

.. image:: https://codecov.io/gh/GeoNode/geonode/branch/master/graph/badge.svg
:target: https://codecov.io/gh/GeoNode/geonode

.. image:: https://secure.travis-ci.org/GeoNode/geonode.png
:alt: Build Status
:target: http://travis-ci.org/GeoNode/geonode


GeoNode Support
===============

To get support, give feedback and suggestions please use the GeoNode official channels, the users mailing list: http://lists.osgeo.org/pipermail/geonode-users/ and the developers mailing list: http://lists.osgeo.org/pipermail/geonode-devel/.

This repository is used to track code changes and GeoNode issues, please DON'T open new issues to ask for support.


GeoNode Installation
====================

If you just want to try GeoNode, it is recommended to use Ubuntu 14.04 and install the latest stable release of GeoNode.::

sudo add-apt-repository ppa:geonode/stable
sudo apt-get update
sudo apt-get install geonode

If instead, you are interested in doing development on the source code, here are the instructions: http://docs.geonode.org/en/master/tutorials/devel/devel_env/index.html

Development Installations
=========================

Docker Usage
------------

If you want to use Docker you can now::

# build the docker container
docker-compose build

# run the docker container
docker-compose up

# turn it off
docker-compose down

Or if you want to use the provided Makefile::

# build the container
make build

# run the container
make up

# create database
make sync

# pull latest images
make pull

# complete development setup
make develop

.. note:: For development you need to add ``geonode`` alias into ``/etc/hosts/`` file as following::

$ sudo vim /etc/hosts
##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
##
127.0.0.1 localhost geonode
255.255.255.255 broadcasthost
::1 localhost

To access GeoNode just enter the following url: http://geonode/ on your web browser.
For GeoServer: http://geonode/geoserver/web/

Ubuntu
------

Ubuntu development build instructions using an isolated virtual environment (tested on Ubuntu 14.04 LTS)::

# Install Ubuntu dependencies
sudo apt-get update
sudo apt-get install python-virtualenv python-dev libxml2 libxml2-dev libxslt1-dev zlib1g-dev libjpeg-dev libpq-dev libgdal-dev git default-jdk

# Install Java 8 (needed by latest GeoServer 2.9)
sudo apt-add-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer

# Create and activate the virtualenv
virtualenv --no-site-packages venv
source venv/bin/activate

# git clone geonode
git clone https://github.com/GeoNode/geonode
cd geonode

# Install pip dependencies
pip install -r requirements.txt --no-deps
pip install -e .
pip install pygdal==1.11.3.3

For Ubuntu 16.04 you should create your virtual-env like this instead (so with site packages)::

virtualenv venv

Instead of installing pygdal, you should do the following::

# Install the system python-gdal
sudo apt-get install python-gdal
# Create a symbolic link in your virtualenv
ln -s /usr/lib/python2.7/dist-packages/osgeo venv/lib/python2.7/site-packages/osgeo

You can now setup and start GeoNode::

# Paver setup
paver setup
paver sync
paver start

In case you want to be involved in static files development::

sudo apt-get install npm
sudo npm install -g bower
sudo npm install -g grunt-cli


openSUSE
--------

openSUSE Development Build Instructions::

# Add Application:Geo and Python repositories
zypper -ar http://download.opensuse.org/repositories/Application:/Geo/openSUSE_12.2/ GEO
zypper -ar http://download.opensuse.org/repositories/devel:/languages:/python/openSUSE_12.1/ python
zypper refresh

# Basic build packages
zypper install gcc gcc-c++ python-devel libgeos-devel libproj-devel

# Python native dependencies
zypper install python-pip python-virtualenv python-imaging python-lxml python-gdal

# Java dependencies
zypper install java-1_7_0_openjdk-devel ant maven

# Supporting tools
zypper install git gettext-runtime

# Create virtualenv and activate it
virtualenv venv --system-site-packages
source venv/bin/activate
cd venv

# Clone GeoNode
git clone https://github.com/GeoNode/geonode.git

# Install GeoNode in the local virtualenv
pip install -e geonode --use-mirrors

cd geonode

# Compile GeoServer
paver setup

# Initialize database
paver sync

# Start the servers
paver start

Windows
-------

Windows Development Build Instructions::


Prerequisites:
# Java JDK
# Python 2.7 (32 bit)
# ant (bin directory must be on system PATH)
# maven2 (bin directory must be on system PATH)
# Python distutils (easy_install)
# GDAL Core Libraries
# git

# Install and configure from the windows command prompt
If you don't already have python virtualenv installed, then do it now:
easy_install virtualenv

# Download and install http://download.gisinternals.com/sdk/downloads/release-1800-gdal-1-11-4-mapserver-6-4-3/gdal-111-1800-core.msi
# Download and install http://download.gisinternals.com/sdk/downloads/release-1800-gdal-1-11-4-mapserver-6-4-3/GDAL-1.11.4.win32-py2.7.msi
# Choose your 32 bit python as your install target
# If you create your virtualenv before doing this, you can copy the <python>\lib\site-packages\osgeo and GDAL-* directory over to your <virtual env>\lib\site-packages directory

# Create virtualenv and activate it
cd <Directory to install the virtualenv & geonode into>
virtualenv venv
venv\scripts\activate

# Clone GeoNode
git clone https://github.com/GeoNode/geonode.git

# Install compiled packages for Python 2.7 Win32
cd geonode
pip install paver
pip install pyyaml
paver win_install_deps

# Install GeoNode in the local virtualenv, if you get an error about use-mirrors, just remove the argument
pip install -e . --use-mirrors

# Note, you may get errors due to certain dependencies not being installable on windows with pip, such as lxml and shapely.
# For these, you can download a whl file (use cp27 / win32 version) from http://www.lfd.uci.edu/~gohlke/pythonlibs and then install them via pip.
# Ex: pip install <Download Dir>\Shapely-1.5-16-cp27-cp27m-win32.whl
#
# Also note, you may have to adjust the dependencies in geonode\setup.py to say >= instead of ==,
# ie "Shapely>=1.5.13", instead of "Shapely==1.5.13",

# Compile GeoServer
paver setup

# Set GDAL environment info
SET GDAL_LIBRARY_PATH=<GdalPath>\gdal111.dll
SET GDAL_HOME=<GdalPath>
SET GEOS_LIBRARY_PATH=<GdalPath>\geos_c.dll
SET PATH=<GdalPath>;%PATH%

# Initialize database
paver sync

# Start the servers
paver start --java_path=C:/path/to/java/bin/java.exe



Mac OSX
-------

Mac OSX Development Build Instructions::

# you may need brew install various dependencies

mkdir -p ~/pyenv
virtualenv ~/pyenv/geonode
source ~/pyenv/geonode/bin/activate
git clone https://github.com/GeoNode/geonode
cd geonode
pip install lxml
pip install pyproj
pip install nose
pip install httplib2
pip install shapely
pip install pillow
pip install paver

# Node and tools required for static development
brew install node
npm install -g bower
npm install -g grunt-cli

#Install pip dependencies
pip install -e .

#Paver handles dependencies for Geonode, first setup (this will download and update your python dependencies - ensure you're in a virtualenv)
paver setup
paver sync
paver start

# Optional: To generate document thumbnails for PDFs and other ghostscripts file types
# Then download ghostscript: https://www.macupdate.com/app/mac/9980/gpl-ghostscript
brew install imagemagick
pip install Wand==0.3.5

Once fully started, you should see a message indicating the address of your geonode.
The default username and password are ``admin`` and ``admin``::

Development Geonode is running at http://localhost:8000/
To stop the GeoNode machine run:
paver stop

Or quit the server by pressing
CTRL-C to shut down

Before starting GeoNode (paver start), you could test your installation by running tests::

paver test
paver test_integration

In case you want to build yourself the documentation, you need to install Sphinx and the run 'make html' from within the docs directory::

pip install Sphinx
pip install sphinx_rtd_theme
cd docs
make html

You can eventually generate a pdf containing the whole documentation set. For this purpose, if using Ubuntu you will need to install the texlive-full package::

sudo apt-get install texlive-full
make latexpdf

.. note::

When running ``virtualenv venv`` the ``--system-site-packages`` option is
not required. If not enabled, the bootstrap script will sandbox your virtual
environment from any packages that are installed in the system, useful if
you have incompatible versions of libraries such as Django installed
system-wide. On the other hand, most of the times it is useful to use a version of
the Python Imaging Library provided by your operating system
vendor, or packaged other than on PyPI. When in doubt, however, just leave
this option out.

Development Roadmap
===================

Geonode's development roadmap is documented in a series of Geonode Improvement Projects (GNIPS).
They are documented here: https://github.com/GeoNode/geonode/wiki/GeoNode-Improvement-Proposals.
GNIPS are considered to be large undertakings which will add a large amount of features to the project.
As such they are the topic of community dicussion and guidance.
The community discusses these on the developer mailing list: http://lists.osgeo.org/pipermail/geonode-devel/
Github issues tracks features and bugs, for new developers the tag 'easy-pick' indicates an
issue that should be relatively easy for new developers to understand and complete. Once you have completed an issue
a pull request should be submitted. This will then be reviewed by the community.

GPL License
===========

GeoNode is Copyright 2016 Open Source Geospatial Foundation (OSGeo).

GeoNode is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

GeoNode is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with GeoNode. If not, see <http://www.gnu.org/licenses/>.

Project details


Release history Release notifications

This version
History Node

2.8

History Node

2.8rc13

History Node

2.8rc12

History Node

2.8rc11

History Node

2.8rc10

History Node

2.8rc9

History Node

2.8rc8

History Node

2.8rc7

History Node

2.8rc6

History Node

2.8rc5

History Node

2.8rc4

History Node

2.8rc3

History Node

2.8rc2

History Node

2.8rc1

History Node

2.8rc0

History Node

2.7

History Node

2.6.3

History Node

2.6.2

History Node

2.6.1

History Node

2.6

History Node

2.6c1

History Node

2.6a1

History Node

2.5.15

History Node

2.5.14

History Node

2.5.13

History Node

2.5.12

History Node

2.5.10

History Node

2.5.9

History Node

2.5.7

History Node

2.5.6

History Node

2.5.5

History Node

2.5.4

History Node

2.5.3

History Node

2.5.2

History Node

2.5.1

History Node

2.5.dev20160825082804

History Node

2.4.1

History Node

2.4

History Node

2.4c4

History Node

2.4c3

History Node

2.4c2

History Node

2.4c1

History Node

2.4b28

History Node

2.4b27

History Node

2.4b26

History Node

2.4b25

History Node

2.4b24

History Node

2.4b23

History Node

2.4b22

History Node

2.4b21

History Node

2.4b20

History Node

2.4b19

History Node

2.4b18

History Node

2.4b17

History Node

2.4b16

History Node

2.4b15

History Node

2.4b14

History Node

2.4b13

History Node

2.4b12

History Node

2.4b11

History Node

2.4b10

History Node

2.4b8

History Node

2.4b7

History Node

2.4b6

History Node

2.4b5

History Node

2.4b4

History Node

2.4b3

History Node

2.4b2

History Node

2.4b1

History Node

2.4a38

History Node

2.4a36

History Node

2.4a35

History Node

2.4a34

History Node

2.4a33

History Node

2.4a32

History Node

2.4a31

History Node

2.4a30

History Node

2.4a29

History Node

2.4a28

History Node

2.4a26

History Node

2.4a25

History Node

2.4a24

History Node

2.4a23

History Node

2.4a22

History Node

2.4a21

History Node

2.4a20

History Node

2.4a19

History Node

2.4a18

History Node

2.4a17

History Node

2.4a16

History Node

2.4a15

History Node

2.4a14

History Node

2.4a13

History Node

2.4a12

History Node

2.4a11

History Node

2.4a10

History Node

2.4a9

History Node

2.4a8

History Node

2.4a7

History Node

2.4a6

History Node

2.4a5

History Node

2.4a4

History Node

2.4a3

History Node

2.4a2

History Node

2.4a1

History Node

2.0.1

History Node

2.0

History Node

2.0c13

History Node

2.0c12

History Node

2.0c8

History Node

2.0c7

History Node

2.0c5

History Node

2.0c4

History Node

2.0c3

History Node

2.0c2

History Node

2.0c1

History Node

2.0b64

History Node

2.0b63

History Node

2.0b62

History Node

2.0b61

History Node

2.0b60

History Node

2.0b59

History Node

2.0b58

History Node

2.0b57

History Node

2.0b55

History Node

2.0b54

History Node

2.0b53

History Node

2.0b52

History Node

2.0b51

History Node

2.0b50

History Node

2.0b49

History Node

2.0b48

History Node

2.0b46

History Node

2.0b45

History Node

2.0b44

History Node

2.0b43

History Node

2.0b42

History Node

2.0b41

History Node

2.0b40

History Node

2.0b39

History Node

2.0b38

History Node

2.0b37

History Node

2.0b36

History Node

2.0b35

History Node

2.0b34

History Node

2.0b33

History Node

2.0b32

History Node

2.0b31

History Node

2.0b30

History Node

2.0b29

History Node

2.0b28

History Node

2.0b27

History Node

2.0b26

History Node

2.0b25

History Node

2.0b24

History Node

2.0b22

History Node

2.0b21

History Node

2.0b19

History Node

2.0b18

History Node

2.0b17

History Node

2.0b13

History Node

2.0b12

History Node

2.0b11

History Node

2.0b10

History Node

2.0b7

History Node

2.0b5

History Node

2.0b4

History Node

2.0b3

History Node

2.0.dev20140626191247

History Node

2.0.dev20130913181950

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
GeoNode-2.8.tar.gz (6.8 MB) Copy SHA256 hash SHA256 Source None Apr 3, 2018

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page