J'ai deux conteneurs Docker, un pour exécuter une instance Jenkins, et un pour exécuter YouTrack. Les scripts de démarrage respectifs ressemblent à ce qui suit:Pourquoi l'un de mes conteneurs Docker ne démarre-t-il pas automatiquement au démarrage de la machine?
Jenkins:
docker run --name jenkins_master --restart on-failure -p 8080:8080 -p 50000:50000 -v /home/ci/jenkins_home/:/var/jenkins_home -d jenkins:latest
YouTrack:
docker run --name youtrack --restart on-failure -p 8081:80 -v /home/ci/youtrack/data/:/opt/youtrack/data/ -v /home/ci/youtrack/backup/:/opt/youtrack/backup -d uniplug/youtrack
Comme vous pouvez le voir, rien de spécial, une cartographie du port et certains -v
.
Je voudrais qu'ils commencent à courir lorsque je démarre le PC. The Docker documenation says « Docker fournit des politiques redémarrage pour contrôler si vos conteneurs commencent automatiquement quand ils sortent, ou lorsque Docker redémarre. »
Comme Docker « redémarre » quand je démarre ma machine, je supposais les deux conteneurs pour exécuter au démarrage en raison à --restart on-failure
. Mais seulement Jenkins commence à fonctionner sur le port 8080, je dois démarrer manuellement YouTrack lorsque je redémarre ma machine.
Comment puis-je éviter le démarrage manuel du conteneur?
J'ai déjà pensé à le paramétrer '--restart always', et il l'a corrigé. Merci pour les informations complémentaires! :) –
Est-ce que cela devrait aussi fonctionner avec '--restart = unless-stopped'? – Extrawurst
@Extrawurst Je pense mais pas sûr. Il est facile de vérifier que – whites11