Description
Use case
In OpenStack deployment is it possible that IronFunction and underlying Docker swarm will be deployed over private subnet with no access to internet, because there’s only one Container-as-a-Service (Project Zun) available cloud-wide and only its underlying COE has an access to internet. So, users are capable to build images within Zun and after that it is possible to distribute built docker images within OpenStack Image service (Glance). Using Glance capabilities, it is possible to export image into Docker.
Proposal
Support route creation where Docker image is identified by tag and URL.
Docker Remote API allows to import image that is identified by tag and URL, IronFunctions might follow the same pattern in order to import function image from external source that is not Docker Hub, local or custom registry.
Such feature will impact the way how image is being resolved right now (assuming we have proper fix for #348):
- lookup local registry
- lookup Docker Hub
- In case of URL - try to import an image
CLI example:
fn routes create otherapp /hello iron/hello --container-from-url http://example.com/hello.tgz
Impacts
HTTP API Impact - introduce new body parameter: fromURL
Server impact - ask runner to import image instead of looking up at registries