Did you ever try running any containers without pushing to a registry? That is the part I can't wrap my head around yet? How do I get the run time to start the container locally?
You can also use docker save to get a tarball and ship that file to another machine, which can be run through docker load and then run as if it was built locally.
If you have an oci bundle, you might look at runc instead: https://github.com/opencontainers/runc