Using the Docker Container

The Cartaro demo Docker container provides a quick and easy way to get
a local demo installation of Cartaro. The container contains all
components needed for Cartaro. These are mainly an Apache webserver
with amongst others PHP, a readily configured Geoserver as well as a
PostgreSQL database with PostGIS.
The only requirement is a running Docker installation, which can be
obtained here https://docs.docker.com/installation

Quick start

Please start your local command-line and enter the following commands.
The commands vary slightly depending on the operating system in
use.

First step

Download the image to your local storage so it can be used
afterwards to start an arbitrary number of instances.

sudo docker pull geops/cartaro

Second step

Start the container. This creates an instance of the
container and exposes Port 8000 to localhost. Please ensure, that this
port is not in use.

sudo docker run -p 8000:80 geops/cartaro

During startup, warnings related to Tomcat failures can be
safely ignored.

Please note: Using any other Port as 8000 requires the following
configuration change in Cartaro after the startup: login into Cartaro,
open Structure -> GeoServer and adapt GeoServer URL to your needs.

Persistent storage

Please note that by default any data stored in Docker containers is not persistent and will be lost when the container is shut down. To enable persistent storage, you must first create a data container:

This step is only needed once. After that, start the cartaro container like this:

sudo docker run --volumes-from cartaro-data -p 8000:80 geops/cartaro

Any changes made in Cartaro will now be saved to the cartaro-data image, and persist between container restarts.

Production usage

This container image mainly targets demonstration purposes and is not intended for production due to missing security settings and usage of default passwords. If you want to use this container as base for your individual production-ready image, please take proper measurements to secure your container. Please change at least all passwords (database passwords, GeoServer admin and root password, Cartaro admin password), lock down the PHP installation, lock down GeoServer and read the Drupal Security Best Practices: https://www.drupal.org/security/secure-configuration