Comment faire pour afficher le journal de sortie à l'aide de docker-composition de l'exécuter?
Lorsque j'utilise docker-compose up
je peux voir les journaux pour tous les conteneurs dans mon docker-compose.yml
fichier.
Cependant, lorsque j'utilise docker-compose run app
, je ne vois la sortie de la console pour app
mais aucun des services que app
dépend. Comment peut voir la sortie du journal pour les autres services?
- Vous pouvez utiliser
docker-compose logs -f service_name
- Notez également que
docker-compose run
crée un nouveau conteneur à chaque fois que vous exécuter. - Im fonctionnant
docker-compose run
dans circleci juste pour exécuter mes tests, donc c'est correct si il crée un nouveau conteneur. Le principal problème est tout simplement pas voir la sortie du journal de la les services qui en dépendent.
Vous devez vous connecter pour publier un commentaire.
Mise à jour le 1er juillet 2019
De la la documentation:
Voir docker journaux
Vous pouvez commencer à Docker composer en mode détaché et joignez-vous à l'historique des tous conteneur plus tard. Si vous avez terminé de regarder les journaux vous pouvez détacher de vous-même à partir des journaux de sortie sans la fermeture de vos services.
docker-compose up -d
à démarrer tous les services en mode détaché (-d
) (vous ne verrez pas tous les journaux en mode détaché)docker-compose logs -f -t
à joindre vous-même dans les journaux de tous les services en cours d'exécution, alors que-f
signifie que vous suivez la sortie du journal et de la-t
option vous donne les dates (Voir Menu fixe de référence)Ctrl + z
ouCtrl + c
à détacher vous-même à partir de la sortie du journal sans d'arrêt de l'exécution des conteneursSi vous êtes intéressé dans les logs d'un seul conteneur, vous pouvez utiliser le
docker
mot-clé à la place:docker logs -t -f <name-of-service>
Enregistrer la sortie
Enregistrer la sortie dans un fichier que vous ajoutez les lignes suivantes à votre commande journaux:
docker-compose logs -f -t >> myDockerCompose.log
docker-compose run
et attachés à ces services, qui ont des noms uniques de services énumérés à l'docker.compose.yml
Si vous voulez voir les journaux de sortie à partir de plusieurs conteneurs. Par exemple. disons que vous avez API conteneur et portail conteneur, vous pouvez faire quelque chose comme ci-dessous :
docker-compose logs -t -f --tail 5 portal api
Où 5 représente les 5 dernières lignes des deux journaux.
docker-compose up -d
docker ps
docker logs <containerid>