在关闭之前将 docker 日志从 ec2 实例上传到 S3
Posted
技术标签:
【中文标题】在关闭之前将 docker 日志从 ec2 实例上传到 S3【英文标题】:Uploading docker logs from ec2 instance to S3 before shutdown 【发布时间】:2019-08-16 08:20:19 【问题描述】:目前在 AWS 上使用 Auto Scaling Group (ASG),有时在 EC2 实例中运行的 docker 容器由于某些模糊的原因而退出,并且该实例可能会从 ASG 中删除。这使得调试故障变得困难,因为 ASG 终止了实例,因此删除了所有出错的证据。 那么,有没有办法在退出之前将 docker 日志写入 S3。
【问题讨论】:
【参考方案1】:如果需要,您可以将日志发送到 cloudwatch 并导出到 s3。
下面是流程,
将您的凭据添加到,
/etc/init/docker.override
与,
env AWS_ACCESS_KEY_ID=
env AWS_SECRET_ACCESS_KEY=
并重新启动您的 docker 服务。
docker run -it --log-driver="awslogs" --log-opt awslogs-region="us-east-1" --log-opt awslogs-group="log-group" --log-opt awslogs-stream="log-stream" ubuntu:14.04 bash
这样 docker 会将所有日志发送到 cloudwatch。
希望对您有所帮助[s.
【讨论】:
以上是关于在关闭之前将 docker 日志从 ec2 实例上传到 S3的主要内容,如果未能解决你的问题,请参考以下文章
docker - 如何将 mysql 数据从本地迁移到 ec2 实例