Generalnie można, ale po to jest HUB żeby w prosty sposób to umożliwić.
Inny sposób to utworzenie images- dodanie rejestru dla image i postawienie tego na własny serwer, gdzie ktoś załaduje z rejestru taki image.
Wymagania: opłacony, zapezpieczony serwer umożliwiający wstawianie plików tego typu
https://medium.com/@sanketmeghani/docker-transferring-docker-images-without-registry-2ed50726495f
Obrazy platformy Docker są przechowywane jako warstwy systemu plików. Każde polecenie w pliku Dockerfile tworzy warstwę. Możesz również tworzyć warstwy za pomocą docker commitwiersza poleceń po wprowadzeniu pewnych zmian ( docker runprawdopodobnie).
Te warstwy są domyślnie przechowywane w /var/lib/docker. Chociaż można (teoretycznie) wybrać pliki i zainstalować je na innym serwerze dockera, to prawdopodobnie złym pomysłem jest bawić się wewnętrzną reprezentacją używaną przez Docker.
Po wypchnięciu obrazu warstwy te są wysyłane do rejestru (domyślnie rejestru centrum docker… chyba że oznaczysz obraz innym prefiksem rejestru) i tam są przechowywane. Podczas pchania identyfikator warstwy służy do sprawdzenia, czy masz już warstwę lokalnie, czy też należy ją pobrać. Możesz użyć, docker historyaby zerknąć, które warstwy (inne obrazy) są używane (i do pewnego stopnia, które polecenie utworzyło warstwę).
Jeśli chodzi o opcje udostępniania obrazu bez wypychania do rejestru centrum docker, najlepsze opcje to: