ENTRYPOINT dans le build de l'image
This commit is contained in:
parent
b2511c4b01
commit
a321c0fe91
|
@ -413,8 +413,9 @@ VOLUME /var/log/
|
|||
# Le port 514/udp est rendu public à l'extérieur du conteneur à son exécution
|
||||
EXPOSE 514/udp
|
||||
|
||||
# La commande suivante est exécutée lorsque le conteneur est exécuté
|
||||
# La commande suivante est exécutée lorsque le conteneur est exécuté, en mode "shell"
|
||||
CMD /usr/sbin/rsyslogd -n
|
||||
# Equivalent à CMD ["/bin/sh","-c","/usr/sbin/rsyslogd","-n"] (format JSON)
|
||||
```
|
||||
|
||||
Dans la mesure du possible, voici quelques bonnes pratiques à respecter :
|
||||
|
@ -441,9 +442,14 @@ serait :
|
|||
```
|
||||
CMD touch /var/log/foo.log && tail -f /var/log/foo.log & /usr/bin/foo
|
||||
```
|
||||
|
||||
À noter que seulement une seule directive `CMD` est acceptée dans un _Dockerfile_.
|
||||
|
||||
Ici l'exécutable est spécifié pas l'instruction `CMD` mais ce n'est pas toujours le cas.
|
||||
L'instruction `ENTRYPOINT` peut être utilisé pour spécifier l'exécutable, tandis que CMD permettra de donner les arguments.
|
||||
Dans ce cas `ENTRYPOINT` et `CMD` doivent être spécifiés au format JSON.
|
||||
|
||||
À noter qu'il peut y avoir plusieurs instructions `ENTRYPOINT` dans un _Dockerfile_ mais seul la dernière sera prise en compte.
|
||||
|
||||
On peut ensuite construire notre image, en lui donnant ici le _tag_ _rsyslog_ :
|
||||
|
||||
```
|
||||
|
|
Loading…
Reference in a new issue