我无法在ecs中显示来自我的docker容器的日志。
我做了什么:
1)ssh进入集群的ec2实例。
2)docker记录我的服务
然后显示此消息:
FATA[0000] Error executing 'logs': Failed to get log configuration: Container 'my-container': Must specify log driver as awslogs
我要做的是在控制台中显示日志。
我不明白的是,对于某些容器,泊坞窗日志命令可以正常工作。
答案 0 :(得分:0)
在/etc/docker/daemon.json
中打开docker daemon文件并添加日志驱动程序:
{
"log-driver": "awslogs"
}
并使用sudo systemctl restart docker
答案 1 :(得分:0)
在ECS中创建任务定义修订时,应选择json-log
的docker日志驱动程序,如果要使用docker logs container-id
命令查看docker日志。您将从docker ps命令获取容器ID。
但是,如果要将docker日志推送到cloudwatch日志,则必须选择aws-logs
作为docker日志驱动程序。
对于某些容器,它可能工作正常,因为这些容器在其任务定义中将docker log driver作为json文件设置。
如何创建任务定义? 参考:https://docs.aws.amazon.com/AmazonECS/latest/developerguide/create-task-definition.html
如果您仍然遇到问题,请告诉我。