OpenStreetMap Arbitrary Excerpt Export - Get the OpenStreetMap data you want in the file format you need
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
conversion_service
docker_entrypoint
docs
hooks
osm_pbf_updater
osmaxx
tests
web_frontend
.coveragerc
.dockerignore
.gitignore
.travis.yml
Dockerfile.frontend
Dockerfile.mediator
Dockerfile.nginx
Dockerfile.worker
LICENSE
MANIFEST.in
Makefile
README.md
activate_local_development
build_and_push_images.py
conftest.py
docker-compose-dev.yml
docker-compose.yml
mkdocs.yml
pytest.ini
release.py
requirements-all.in
requirements-all.txt
requirements-local.in
requirements.in
requirements.txt
runtests.py
setup.cfg
setup.development.sh
setup.py
tox.ini

README.md

Build Status (branch master)

Django-based Web Frontend for osmaxx.

Development

Build Status (branch develop)

We do not recommend to run the application local on your machine but it's possible. We recommend to use the development docker containers.

Run it locally on Linux (Development)

Prerequisites

To run this project locally, you need sufficiently recent versions of docker and docker-compose installed.

Initialization

Development

Simply run

make local_dev_env

to set up *.env files suitable for local use of our docker-compose files. Do not use this for production! It will make use of insecure and hard coded passwords.

Production

Copy the environment folder compose-env-dist to compose-env and adapt the latter's content.

cp -r compose-env-dist compose-env
# Then, edit compose-env/*.env

Docker container bootstrapping

Development

For the rest of the readme, if in development:

  • set DEPLOY_VERSION to local (export DEPLOY_VERSION=local)
  • use docker-compose -f docker-compose.yml -f docker-compose-dev.yml

or source the helper script source activate_local_development. This enables to use docker-compose without all the -f options and without needing to specify DEPLOY_VERSION.

To setup all the containers and their dependencies by hand, run

docker-compose build

Production

In production, you should be setting DEPLOY_VERSION=xxx before running any of the commands below, where xxx is the version you'd like to deploy.

Generic

The rest of the documentation can be followed independently if on production or on development.

Update the containers

docker-compose pull

Then initiate the project defaults by running the following command:

docker-compose run frontend /bin/bash -c './manage.py createsuperuser'

Alternative to this command, bootstrap the container and execute the commands inside the container by hand:

docker-compose run frontend /bin/bash

Inside the container:

  1. (optional, recommended) setup a superuser: $ ./manage.py createsuperuser

Running the project

Start the containers using docker compose:

docker-compose up

Unsure which version is running?

Go to <your_ip>:8888/version/.

where <your_ip> is your public IP.

Testing

Can be found under Testing.

Documentation

See Wiki: https://github.com/geometalab/osmaxx/wiki

Problems & Solutions

ProgrammingError at /login/

relation "django_site" does not exist
LINE 1: ..."django_site"."domain", "django_site"."name" FROM "django_si...

You forgot to run the migrations

Tests failed, but worked before with no apparent change

Do not run docker-compose build --no-cache. Use docker-compose rm -f && docker-compose build, or if you really want to start clean, remove all docker containers

docker rm -f $(docker ps -q)

and remove all images

docker rmi -f $(docker images -q)

WARNING: This removes all containers/images on the machine and is discouraged in production.