2017-04-05 10 views
5

Mam kilka podstawowych obrazów doków, które nie należą do mnie (więc nie mogę ich modyfikować). Jednak tworzę z nich nowe obrazy z dodatkowymi zainstalowanymi dodatkami.dockerfile: jak używać CMD lub ENTRYPOINT z obrazu podstawowego

Czego nie mogę się dowiedzieć, to jak przekazać dockerfile, aby skopiował CMD (lub ENTRYPOINT) obrazu podstawowego. Coś takiego:

FROM other:latest 
RUN my-extra-install 
CMD <use-the-CMD-from-base-image> 

Nie sądzę, że istnieje jakaś bezpośrednia składnia polecenia CMD do zrobienia tego, co chcę. Zastanawiam się, czy istnieje obejście.

Odpowiedz

7

Jeśli pozostawisz puste miejsce w nowym pliku Dockerfile, odziedziczy on ten z podstawowego obrazu.

Na przykład:

bazowej

FROM ubuntu 
CMD ["echo", "AAA"] 

Layer1

FROM base 

Jeśli budować powyższe obrazy i uruchomić layer1 otrzymasz następujące:

$ sudo docker run -it layer1 
AAA 
+0

Myślałem, że próbowałem, a to się nie udało. Ale spróbowałem ponownie i na pewno działa. –

Powiązane problemy