{"id":21685873,"url":"https://github.com/sodascience/osmenrich_docker","last_synced_at":"2025-08-13T02:48:29.685Z","repository":{"id":106620660,"uuid":"338014671","full_name":"sodascience/osmenrich_docker","owner":"sodascience","description":"Setup local OSRM and Overpass API endpoints using Docker","archived":false,"fork":false,"pushed_at":"2024-02-05T09:02:47.000Z","size":103,"stargazers_count":5,"open_issues_count":0,"forks_count":4,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-12T08:16:08.595Z","etag":null,"topics":["docker","osrm","overpass-api","soda-science-team","utrecht-university"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sodascience.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2021-02-11T11:51:36.000Z","updated_at":"2025-02-12T15:56:06.000Z","dependencies_parsed_at":"2023-06-08T02:45:34.860Z","dependency_job_id":null,"html_url":"https://github.com/sodascience/osmenrich_docker","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sodascience/osmenrich_docker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sodascience%2Fosmenrich_docker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sodascience%2Fosmenrich_docker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sodascience%2Fosmenrich_docker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sodascience%2Fosmenrich_docker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sodascience","download_url":"https://codeload.github.com/sodascience/osmenrich_docker/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sodascience%2Fosmenrich_docker/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270170571,"owners_count":24539360,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-13T02:00:09.904Z","response_time":66,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","osrm","overpass-api","soda-science-team","utrecht-university"],"created_at":"2024-11-25T16:23:29.005Z","updated_at":"2025-08-13T02:48:29.611Z","avatar_url":"https://github.com/sodascience.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cimg src=\"img/docker.png\" width=\"200px\"\u003e\u003c/img\u003e\n\n# Docker-compose workflow for `osmenrich`\n\nWe provide a docker-compose workflow to install and run local instances of the Overpass API, used to serve data from openstreetmap, and OSRM, used to compute routing distances and durations.\n\nThis repository is maintained by the [ODISSEI Social Data Science (SoDa)](https://odissei-data.nl/nl/soda/) team.\n\n\u003cimg src=\"img/word_colour-l.png\" width=\"250px\"\u003e\u003c/img\u003e\n\n\u003c!-- INSTALLATION --\u003e\n## Installation\n\nWe provide one supported way to install the Overpass API and OSRM servers used in `osmenrich`, which makes use of `docker-compose`.\n\nWe run instances of the Overpass API and of OSRM via `Docker`.\n\n- The Overpass API uses the docker image from [wiktorn](https://github.com/wiktorn/Overpass-API).\n- The OSRM instances use the official docker image of the OSRM project: [https://hub.docker.com/r/osrm/osrm-backend/](https://hub.docker.com/r/osrm/osrm-backend/).\n\n**Note**: Docker needs to have **at least** 4GB of RAM and 2GB of Swap memory _available_ at the time of installation to complete the installation of the overpass API instance. In case your machine does not have enough memory, we suggest you to close the instance(s) of OSRM created using docker-compose to free up memory before trying again.\n\n### Installation via Docker\n\nWe assume that `docker` is installed and running on your machine. If that is not the case, please head to the [Docker website](https://www.docker.com/products/docker-desktop) to download Docker Desktop.\n\nBefore setting up the server instances using the default settings set by the SoDa science team you need to the setup that most resembles the objective of your project. The table below offers an overview of the choices that we currently provide.\n\n\n| Version     | Overpass server/ \u003cbr /\u003eOSM server | OSRM server for\u003cbr /\u003edistances/durations | Name to use |\n| :---------- | :-------------------------------: | :--------------------------------------: | :---------: |\n| Base        |                Yes                |                    No                    |   `base`    |\n| Normal car  |                Yes                |               Only by car                |    `car`    |\n| Normal foot |                Yes                |               Only by foot               |   `foot`    |\n| Normal bike |                Yes                |               Only by bike               |   `bike`    |\n| Advanced    |                Yes                |            Car, foot and bike            | `advanced`  |\n\n\n#### On MacOS or Linux\n\nOnce you chose which setup is the most fitting with what required by your project, you need to carry out two steps:\n\n**1.** Go to the docker folder for the use case you want to setup and modify what comes after the `=` for the following variables in the `.env` file:\n   - To select a specific region to use with the OpenStreetMap server, go to \u003chttps://download.geofabrik.de/\u003e and find the region of interest. Once found, add the name of the country and of the region (or subregion) after the `=` in the following two variable in the `.env` file:\n     - `COUNTRY_MAP=` _add name of the country_\n     - `REGION=` _add name of the region or subregion_\n   - Within the same webpage, find the link to the _map file_ that ends with `.osm.bz2` (usually under the section `Other Formats and Auxiliary Files`) for the country or region you previoulsy selected and copy this link after the `=` in the following variable in the `.env` file:\n     - `OVERPASS_PLANET_URL=` _add the link to the `.osm.bz2` file (usually under the section `Other Formats and Auxiliary Files`)_\n   - To select the replication server, go to \u003chttp://download.openstreetmap.fr/replication/\u003e and find the same country or region you selected above. When found, navigate to the `minute` folder and copy the URL after the `=` of the following variable:\n     - `OVERPASS_DIFF_URL=` _add the URL of the replication server (needs to end with `/minute/`)_\n     \n**2.** Then, just use the following commands to download the map and start the containers:\n\n```bash\n  # You need to be in the **root** folder of the repository\n  cd docker\n  bash ./build.sh \u003cname-of-the-chose-docker-setup\u003e\n```\n\n#### On Windows\n\n**1.** Follow **step 1** of the _MacOS or Linux guide_ with the only difference that you also need to download the `\u003cyour-location\u003e-latest.osm.pbf` data for your location of interest to `docker/osrm/data` from \u003chttps://download.geofabrik.de/\u003e\n\n**2.** `cd` to the folder of your preferred choice of setup, for example `cd docker base`\n\n**3.** Then, with Docker Desktop open, start docker compose with `docker-compose up`\n\nThe complete install procedure will take at least one hour. If you run into any problem, please look at the [troubleshooting section](#troubleshooting) below or open an [issue](#issue).\n\n### Manual Installation\n\nHowever, we also provided a small guide to manually setup the instances, available [here](MANUAL.md). This guide is not actively supported by the SoDa science team and we recommend to use it only if you know what you are doing and want to have precise control the installation settings for each instance.\n\n\n\u003c!-- TROUBLESHOOTING --\u003e\n## Troubleshooting\n\n- If Docker complains about not being able to connect to its daemon, make sure you are in the `docker` group:\n  \n  ```cmd\n  sudo usermod -aG docker $USER\n  ```\n\n\u003c!-- CONTRIBUTING --\u003e\n## Contributing\n\nContributions are what make the open source community an amazing place to\nlearn, inspire, and create. Any contributions you make are **greatly\nappreciated**.\n\nIn this project we use the\n[Gitflow workflow](https://nvie.com/posts/a-successful-git-branching-model/)\nto help us with continious development. Instead of having a single\n`master`/`main` branch we use two branches to record the history of the\nproject: `develop` and `master`. The `master` branch is used only for the\nofficial releases of the project, while the `develop` branch is used to\nintegrate the new features developed. Finally, `feature` branches are used to\ndevelop new features or additions to the project that will be `rebased and\nsquash` in the `develop` branch.\n\nThe workflow to contribute with Gitflow becomes:\n\n1. Fork the Project\n2. Create your Feature Branch (`git checkout -b feature/\u003cAmazingFeature\u003e`)\n3. Commit your Changes (`git commit -m 'Add some \u003cAmazingFeature\u003e'`)\n4. Push to the Branch (`git push origin feature/\u003cAmazingFeature\u003e`)\n5. Open a Pull Request\n\n## License\n\nThe `osmenrich_docker` repository is published under the MIT license.\n\n## Contact\n\nDo you have questions, suggestions, or remarks on the technical implementation? File an issue in the issue tracker or feel free to contact [Erik-Jan van Kesteren](https://github.com/vankesteren).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsodascience%2Fosmenrich_docker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsodascience%2Fosmenrich_docker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsodascience%2Fosmenrich_docker/lists"}