Building and Publishing a Runtime Docker Image for Cloud Simulations top

After you have tested your changes to Apollo 5.0 using your local cluster, you can do more exhaustive testing by running simulations on cloud clusters. To do this, you will need to create an docker image of your build of Apollo 5.0 and publish it to a publicly accessible docker registry (e.g., Docker Hub).

To build the docker image, run:

./docker/build/runtime.x86_64.sh

If the development container is not running, you will see this message:

Error: No such container: apollo_dev_USER
ERROR: apollo_dev_USER isn't running or doesn't have /apollo/bazel directory
       make sure it's running (you can use docker/scripts/dev_start.sh)
       and build Apollo there or add "rebuild" parameter to this script
       and it will be started and built automatically

Upon successful completion, you will see:

...
Docker image with prebuilt files was built and tagged as lgsvl/apollo-5.0-runtime:latest, you can start it with:
  docker/scripts/runtime_start.sh
and switch into it with:
  docker/scripts/runtime_into.sh

Confirm operation of the image by starting it:

./docker/scripts/runtime_start.sh

entering into it:

./docker/scripts/runtime_into.sh

and running the appropriate commands to verify its functionality.

Finally, tag the image and push it to the publicly accessible Docker registry:

docker image tag lgsvl/apollo-5.0-runtime:latest REGISTRY/IMAGE:TAG
docker image push REGISTRY/IMAGE:TAG

Follow the instructions here to create a cloud cluster and then create a simulation using it by following the instructions here. Enter REGISTRY/IMAGE:TAG in place of the default on the Autopilot pane