Après avoir exécuté "docker-compose up -d --force-recreate " + service_name
via un subprocess.call()
python, je veux ensuite imprimer les journaux de la commande docker-compose en utilisant simplement un simple "docker-compose logs " + service_name
. Cependant, les journaux ne contiendront au hasard que "Attaching to", plutôt que l'impression complète des journaux. Je modifie la base de données des conteneurs, avec les premiers changements DDL, puis les changements DML. Il s'avère que le conteneur est en cours de rotation et que mes modifications sont effectuées, et lorsque je vais exécuter l'étape DML, le conteneur se met à niveau avec succès et les journaux s'impriment, il semble donc que les journaux restent bloqués à "Attaching to" même bien que le conteneur continue à se terminer.
Pourquoi les journaux de docker-compose afficheraient-ils uniquement «Attaching to»?
Partie du fichier docker-compose:
services: # # Components # ---------- # agile: image: image ports: - 10031:8080 environment: - JAVA_OPTS=-Xmx768m -Xss512k - ACTIVE_RELEASE_ID=${ACTIVE_RELEASE_ID} - CACHE_HOST=localdocker - CODE_DROP_ID=${CODE_DROP_ID} - ENVIRONMENT_TYPE=side - EUREKA_HOST=localdocker - KV_STORE_ADDRESS=localdocker:8500 - KV_STORE_HOST=localdocker - KV_STORE_PORT=8500 - KV_STORE_TYPE=remote - MESSAGING_HOST=localdocker - SEARCH_HOST=localdocker - SPRING_CLOUD_CONSUL_CONFIG_ENABLED=true - VIRTUAL_HOST=localdocker extra_hosts: - localdocker:${LOCALDOCKER_HOSTNAME} logging: driver: fluentd options: tag: docker env: NodeHostName,NodeID,Service,ServiceLabels,Task,TaskSlot,TaskID,TZ fluentd-address: ${LOCALDOCKER_HOSTNAME}:24224 fluentd-async-connect: "true"
C'est l'un des quelque 40 composants en cours de construction. J'utilise Ansible pour exécuter mes commandes de manière asynchrone.
3 Réponses :
C'est l'attachement au conteneur (dont le nom est donné dans le fichier de composition) à partir de l'image qui est construite a jeté le fichier docker. il y a une erreur avec le conteneur et les images en raison de l'incompatibilité des détails en tant que noms de conteneurs et d'images en UP ...
Alors, êtes-vous en train de dire que le problème de savoir pourquoi les docker-compose logs
affichent uniquement «Attaching to» est qu'il y a une incompatibilité de nom lors de la commande UP?
Ouais. J'ai appris cela de ce fait face à des problèmes lors de la création du fichier de composition
Mon problème face à une pièce Attaching to
vide Attaching to
message:
Depuis que j'avais lancé l'application avec docker-compose -p my-fancy-name up -d
, pour recevoir les journaux pour cela, j'ai également dû passer le même indicateur -p
:
docker-compose -p my-fancy-name logs -f
Je n'avais pas la même configuration que la vôtre, mais exécuter ma pile docker-compose avec la directive -p et la journalisation avec -p a résolu mon problème. Merci
J'ai eu le même problème - dans mon cas, le problème a été simplement résolu par cd
dans le répertoire où se trouve le fichier docker-compose. Ensuite, docker-compose logs -f
nouveau docker-compose logs -f
.
Ajoutez un
python script
docker-compose.yaml
, s'il vous plaît.J'ai ajouté une partie du fichier
docker-compose
. Le python, c'est moi qui exécute juste un subprocess.call sur le docker ci-dessus