Fixes #8375 - Not validating tag uniqueness per image

Images can have duplicate tags as images are shared across repositories. For
example, two repos could have a "latest" tag for an image.
Fixes #7647: Added support for external registries
Fixes #8226 - Support environment variables on creation