Configuration de la sortie détaillée du démon Docker dans Amazon ECS - Amazon Elastic Container Service

Configuration de la sortie détaillée du démon Docker dans Amazon ECS

Si vous rencontrez des difficultés avec des conteneurs ou des images Docker, vous pouvez activer le mode de débogage sur votre démon Docker. L’utilisation du débogage fournit une sortie plus détaillée du démon. Vous pouvez l’utiliser pour récupérer les messages d’erreur envoyés depuis des registres de conteneurs, tels qu’Amazon ECR.

Important

Cette procédure a été écrite pour l'AMI Amazon Linux optimisée pour Amazon ECS. Pour les autres systèmes d’exploitation, consultez les sections Activation du débogage et Contrôle et configuration de Docker avec systemd dans la documentation Docker.

Pour activer le démon Docker en mode débogage sur l’AMI Amazon Linux optimisée pour Amazon ECS
  1. Connectez-vous à votre instance de conteneur.

  2. Ouvrez le fichier d'options Docker dans un éditeur de texte, tel que vi. Pour l'AMI Amazon Linux optimisée pour Amazon ECS, le fichier d'options Docker se trouve sous /etc/sysconfig/docker.

  3. Recherchez l'instruction d'options Docker, puis ajoutez l'option -D à la chaîne, à l'intérieur des guillemets.

    Note

    Si l'instruction d'options Docker commence par le signe #, supprimez ce caractère pour supprimer la mise en commentaire de l'instruction et activer les options.

    Pour l'AMI optimisée pour Amazon ECS, l'instruction d'options Docker s'appelle OPTIONS. Par exemple :

    # Additional startup options for the Docker daemon, for example: # OPTIONS="--ip-forward=true --iptables=true" # By default we limit the number of open files per container OPTIONS="-D --default-ulimit nofile=1024:4096"
  4. Enregistrez le fichier et quittez votre éditeur de texte.

  5. Redémarrez le démon Docker.

    sudo service docker restart

    La sortie est la suivante :

    Stopping docker: [ OK ] Starting docker: . [ OK ]
  6. Redémarrez l'agent Amazon ECS.

    sudo service ecs restart

Vos journaux Docker doivent désormais présenter des informations plus détaillées.

time="2015-12-30T21:48:21.907640838Z" level=debug msg="Unexpected response from server: \"{\\\"errors\\\":[{\\\"code\\\":\\\"DENIED\\\",\\\"message\\\":\\\"User: arn:aws:sts::1111:assumed-role/ecrReadOnly/i-abcdefg is not authorized to perform: ecr:InitiateLayerUpload on resource: arn:aws:ecr:us-east-1:1111:repository/nginx_test\\\"}]}\\n\" http.Header{\"Connection\":[]string{\"keep-alive\"}, \"Content-Type\":[]string{\"application/json; charset=utf-8\"}, \"Date\":[]string{\"Wed, 30 Dec 2015 21:48:21 GMT\"}, \"Docker-Distribution-Api-Version\":[]string{\"registry/2.0\"}, \"Content-Length\":[]string{\"235\"}}"