Je crée une image Docker à l'aide d'un Dockerfile. Je voudrais exécuter quelques scripts tout en démarrant le conteneur docker. Actuellement, j'ai un script Shell pour exécuter tous les processus nécessaires
CMD ["sh", "start.sh"]
Je voudrais exécuter une commande Shell avec un processus exécuté en exemple en arrière-plan
CMD ["sh", "-c", "mongod --dbpath/test &"]
Outre les commentaires sur votre question qui soulignaient déjà quelques points sur les meilleures pratiques de Docker, vous pouvez de toute façon démarrer un processus en arrière-plan à partir de votre start.sh
script et conservez ce start.sh
script lui-même dans premier plan à l'aide de la commande Nohup
et de l'esperluette (&
). Je ne l'ai pas essayé avec mongod
mais quelque chose comme ce qui suit dans votre start.sh
le script pourrait fonctionner:
#!/bin/sh
...
Nohup sh -c mongod --dbpath /test &
...