2017-09-14 2 views
1

Je suis en cours d'exécution ci-dessous commande pour définir entrypoint par ligne de commande pour démarrer le service nginx avec ce conteneurDocker ENTRYPOINT en utilisant la commande d'exécution docker

root @ serveur: ~ run # docker -it --entrypoint = "/ bin/bash /root/service.sh » bash docker-reg.sogeti-aws.nl:5000/ubuntu:v3

root @ serveur: ~ # cat /root/service.sh

/bin/bash

!

service nginx démarrer tant que vrai; fais dormir 1d; fait

donc est-il possible avec la commande d'exécution docker ou j'ai besoin de définir Dockerfile seulement

+0

Quelle est votre question? –

+0

Le script Entrypoint doit être placé à l'intérieur de continu. –

+0

ma question est que je veux exécuter le service nginx par docker exécuter la commande si le scénario ci-dessus est possible ou non –

Répondre

2

Vous pouvez ajouter l'instruction ENTRYPOINT à la fin de votre Dockerfile.

ENTRYPOINT ["/bin/bash","/root/service.sh"] 

Bien sûr, vous devrez ajouter le service.sh à votre image. Encore une fois en utilisant un Dockerfile

COPY service.sh /root/service.sh 

En fin de compte ce sera quelque chose comme ça.

FROM docker-reg.sogeti-aws.nl:5000/ubuntu:v3 

COPY service.sh /root/service.sh 
ENTRYPOINT ["/bin/bash","/root/service.sh"] 
+1

Merci, mais fera la même chose avec la commande docker run au lieu de Dockerfile si oui alors comment –

+0

Merci maintenant je comprends la logique –