All Projects → geometalab → osmaxx

geometalab / osmaxx

Licence: MIT license
OpenStreetMap Arbitrary Excerpt Export - Get the OpenStreetMap data you want in the file format you need

Programming Languages

Jinja
831 projects
python
139335 projects - #7 most used programming language
HTML
75241 projects
javascript
184084 projects - #8 most used programming language
CSS
56736 projects
shell
77523 projects

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

Development is being done using docker and docker-compose. you should be able to start it with docker-compose up --build.

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>:8889/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.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].