JOpt Quickstart (Sandboxes + REST Endpoint)
Last updated: 2026-02-06
Visit: Full guide / whitepaper
This page is a quickstart cheat sheet: start the container you need, open the URL, login (if CodeServer), and (for REST clients) ensure a TourOptimizer REST endpoint is running.
You can get our free evaluation license here.
AI Assistant
To ask anything about the docs and get custom examples, visit our JOpt AI Assistant (GPT). page.
Quickstart table
| What you want | Container | Start command | Open in browser | Login | Notes |
|---|---|---|---|---|---|
| Java SDK Examples (CodeServer sandbox) | dnaevolutions/jopt_example_server:latest | docker run -it -d --name jopt-examples -p 127.0.0.1:8042:8080 -v "$PWD/:/home/coder/project" dnaevolutions/jopt_example_server:latest | http://localhost:8042/ | jopt | Runs optimization in-process (SDK). No REST endpoint required. |
| Java REST Client sandbox | dnaevolutions/jopt_rest_example_server:latest | docker run -it -d --name jopt-rest-examples -p 127.0.0.1:8043:8080 -v "$PWD/:/home/coder/project" dnaevolutions/jopt_rest_example_server:latest | http://localhost:8043/ | joptrest | Requires a TourOptimizer REST endpoint (self-hosted or DNA-hosted). |
| Python REST Client sandbox | dnaevolutions/jopt_py_example_server:latest | docker run -it -d --name jopt-py-rest-examples -p 127.0.0.1:8033:8080 -v "$PWD/:/home/coder/project" dnaevolutions/jopt_py_example_server:latest | http://localhost:8033/ | jopt | Requires a TourOptimizer REST endpoint. Inside Docker use http://host.docker.internal:8081. |
| C# / .NET REST Client sandbox | dnaevolutions/jopt_net_example_server:latest | docker run -it -d --name jopt-net-rest-examples -p 127.0.0.1:8023:8080 -v "$PWD/:/home/coder/project" dnaevolutions/jopt_net_example_server:latest | http://localhost:8023/ | joptrest | First start can take 1–2 min (plugins + OmniSharp). Requires REST endpoint. |
| TourOptimizer REST Endpoint (backend service) | dnaevolutions/jopt_touroptimizer:latest | docker run -d --rm --name jopt-touroptimizer -p 8081:8081 -e SPRING_PROFILES_ACTIVE=cors dnaevolutions/jopt_touroptimizer:latest | Swagger UI: http://localhost:8081/swagger-ui/index.html | — | Not a sandbox. Mandatory backend for REST clients. |
Stop / remove containers
Stop:
docker stop jopt-examples jopt-rest-examples jopt-py-rest-examples jopt-net-rest-examples jopt-touroptimizer
Remove (if not using --rm):
docker rm jopt-examples jopt-rest-examples jopt-py-rest-examples jopt-net-rest-examples jopt-touroptimizer
One critical networking note (REST clients inside CodeServer)
If you run a REST client inside a CodeServer container and your TourOptimizer REST service runs on your host machine:
- use
http://host.docker.internal:8081 - not
http://localhost:8081(becauselocalhostinside the container refers to the container itself)
References
- Java Examples repo: https://github.com/DNA-Evolutions/Java-TourOptimizer-Examples
- Docker REST TourOptimizer repo: https://github.com/DNA-Evolutions/Docker-REST-TourOptimizer
- Java REST Client Examples repo: https://github.com/DNA-Evolutions/Java-REST-Client-Examples
- Python REST Client Examples repo: https://github.com/DNA-Evolutions/Python-REST-Client-Examples
- C# REST Client Examples repo: https://github.com/DNA-Evolutions/C-Sharp-REST-Client-Examples