Installing the GCS Repo
Quick Start Guide
Section titled “Quick Start Guide”This instructions are meant for users who are familiar with the repo and just need a quick refresher on how to install it. For more detailed instructions, please refer to the Detailed Instructions section below.
Note: If the map server fails to render properly (white screen), please refer to the Map Server Debugging Notes section below.
List of Commands needed to run in order (starting from bun install and ending at bun tauri)
Section titled “List of Commands needed to run in order (starting from bun install and ending at bun tauri)”bun installbun run osm:setupbun run osm:rundocker-compose up dbdocker-compose up rabbitmqbun tauriDetailed Instructions
Section titled “Detailed Instructions”- Clone the repo
- Install the Frontend dependencies using bun (ideal package manager but npm also works)
bun install- Run the osm-setup command first before initializing all Docker Images(use the package.json script with
bun osm:setupand notdocker-compose upto avoid running all containers)
bun run osm:setup- The osm-setup command IS SUPPOSED TO TAKE A WHILE TO INSTALL. If it isn’t, please end the process and try again.
- After the setup is complete, run the PostGreSQL and RabbitMQ containers using docker-compose
docker-compose up dbdocker-compose up rabbitmqNote: You can use the VSCode Containers extension (equivalent to Docker Desktop) to manage the containers if you don’t have Docker Desktop installed. But you still need to have Docker installed on your machine. To use the VSCode Containers extension, open the
docker-compose.ymlfile in VSCode and click on the “Run Service” button above all services EXCEPT THE OSM-SETUP SERVICE.
-
IMPORTANT NOTE: Please do not run
docker-compose upas it will run all containers and cause the map server to fail. Follow the steps above to ensure proper installation. -
To run the entire GCS application, ensure that the osm-server, PostGreSQL, and RabbitMQ containers are running. Run the application using:
bun tauriMap Server Debugging Notes
Section titled “Map Server Debugging Notes”- If you get an error “Error: role renderer already exists” when running the map server, go into Docker Desktop and delete the volume installed. Re-run the setup command to install the volume again.
- Possible solution to making sure that the map server renders properly:
- Stop all containers
- Delete ALL volumes, containers, and images related to GCS in Docker Desktop
- Re-run the setup command
- Start the PostGreSQL and RabbitMQ containers only
- Run the map server using
bun tauri
- There is a difference between running the osm:setup script vs the docker-compose up osm-setup. In the underlying code for osm:setup, it is docker-compose run while docker-compose up runs all containers. This is why it is important to run the setup script and not the docker-compose command.