Packaging a container for software distribution

I'm planning to use Docker to ship software to my customers. Therefore, I need to be able to export an image (including metadata like RUN and EXPOSE) as a file.

Running a registry will not work for my purposes because the software needs to be installable without Internet access.

Docker currently has import/export commands, but there are a few issues with them:

* They work on a container, not an image
* They only import/export root filesystems, therefore metadata is lost

Perhaps an API for this could be:

```
docker package IMAGE_ID > my_software.docker
```

And then either:

```
docker run my_software.docker
```

Or:

```
docker import my_software.docker my_software
docker run my_software
```

I realize this issue may be a bit of a cross section of a few different features, but I couldn't find any existing issues describing this idea.