2015-10-10 9 views
52

Domyślnie, jeśli polecenie wystawienia:Jak zmienić domyślny rejestr dokowania z witryny docker.io na mój prywatny rejestr?

sudo docker pull ruby:2.2.1 

będzie ciągnąć z docker.io oficjalnej stronie domyślnie.

Pulling repository docker.io/library/ruby 

Jak mogę go zmienić na mój prywatny rejestr? Oznacza to, że jeśli wyda

sudo docker pull ruby:2.2.1 

będzie wyciągnąć z mojej prywatnej rejestru, wyjście jest coś takiego:

Pulling repository my_private.registry:port/library/ruby 

Odpowiedz

26

UPDATE: Po twoim komentarzu, nie jest obecnie możliwe, aby zmienić rejestr domyślny , zobacz this issue, aby uzyskać więcej informacji.

powinien być w stanie to zrobić, zastępując hosta i port na własną rękę:

docker pull localhost:5000/registry-demo 

Jeśli serwer jest zdalne/ma uwierzytelniania może być konieczne, aby zalogować się do serwera z:

docker login https://<YOUR-DOMAIN>:8080 

Następnie uruchomiony:

docker pull <YOUR-DOMAIN>:8080/test-image 
+3

'dokowanym ciągnąć : 8080/test-image' było ok. Ale potrzebuję "obrazka testowego doka", który nie zawiera DOMAIN i portu oraz bez logowania. – mainframer

+1

Zaktualizowałem swoją odpowiedź na podstawie Twojego komentarza.Obecnie nie jest możliwe ustawienie domyślnego rejestru – Guy

+0

Prawdopodobnie nie będzie możliwe ustawienie innego domyślnego rejestru, ponieważ łamie on domyślny obszar nazw, w którym większość obrazów polega na fragmentacji – Matt

3

Wcześniej można to osiągnąć stosując DOCKER_OPTS w /etc/default/docker plik konfiguracyjny, który działał na Ubuntu 14:04 i miał jakieś issues na Ubuntu 15:04. Nie wiem, czy zostało to naprawione.

Poniższa linia musi przejść do pliku /etc/default/docker na hoście, na którym działa demon docker. Punkty zmiany do rejestru prywatnego są zainstalowane w twojej sieci lokalnej. Uwaga: konieczne będzie ponowne uruchomienie usługi dokowania, a następnie wprowadzenie tej zmiany.

DOCKER_OPTS="--insecure-registry <priv registry hostname/ip>:<port>" 
6

Wydaje się, że nie będą obsługiwane ze względu na rozdrobnienie byłoby stworzenie w społeczności (czyli dwóch użytkowników dostanie różne obrazy ciągnące ubuntu:latest). Musisz po prostu dodać hosta przed nazwą obrazu. Zobacz tę github issue, aby dołączyć do dyskusji.

(Uwaga, to nie jest przeznaczony jako uparty komentarz po prostu bardzo krótkim podsumowaniu dyskusji, które mogą być następnie we wspomnianej kwestii github).

+7

tak, ale dopiero w początkowych dniach istnienia Linuksa stał się tylko trzema (baza źródłowa [arch, gentoo, slax, ...], oparta na debiucie [debian/ubuntu] i redhat na bazie [enterprise linux, rhel, centos]. Byłoby lepiej z punktu widzenia bezpieczeństwa, aby móc zmień domyślny rejestr upstream na coś samodzielnie zarządzanego –

9

Ponieważ kwestia ta w rzeczywistości nie zostały jeszcze odebrane. ..

Możesz użyć rozwidlenia dockera w Red Hat z flagą "--add-registry" lub zbudować okno dokowane ze źródła z modyfikacją registry/config.go, aby użyć własnej, zakodowanej domyślnej przestrzeni nazw rejestru /indeks.

+0

Widelec RedHata jest dostępny w centos-dodatki. Dzięki za pomoc w zrozumieniu, dlaczego po przejściu do wersji docker.io '--add-registry' przestał działać. – chutz

1

jeśli używasz distro fedora, możesz zmienić plik

/etc/containers/registries.conf 

domenę Dodawanie docker.io

Powiązane problemy