如何使用 AWS 在 Docker Cloud 中设置链接到 S3 的卷?
Posted
技术标签:
【中文标题】如何使用 AWS 在 Docker Cloud 中设置链接到 S3 的卷?【英文标题】:How to set up a volume linked to S3 in Docker Cloud with AWS? 【发布时间】:2016-09-01 21:19:28 【问题描述】:我正在运行我的 Play!带有 Docker Cloud(也可以使用 Rancher)和 AWS 的 webapp,我想将所有日志存储在 S3 中(通过卷)。关于如何以最少的努力实现这一目标的任何想法?
【问题讨论】:
【参考方案1】:使用docker volumes
将日志存储在主机系统中。
尝试S3 aws-cli
将您的本地目录与S3 Bucket
同步
aws s3 sync /var/logs/container-logs s3://bucket/
创建一个cron
以每分钟左右运行一次。
参考:s3 aws-cli
【讨论】:
谢谢,但是你能想出一个不修改主机系统的方法吗? Docker Cloud 提供的默认 ami 并不简单。有hub.docker.com/r/dockercloud/dockup 的经验吗? 不知道你为什么投反对票 - 这似乎是最简单的解决方案 IMO - 只需使用基于 docker 的 aws-cli 版本,如:github.com/xueshanf/docker-awscli 并编写一个 bash 脚本将卷挂载备份到 s3 x 秒,然后睡眠 x 秒,冲洗重复......同样 - 不确定你的容器正在运行什么,但你应该有可用于写入 s3 的日志记录解决方案 - 这是 nodejs 应用程序的一个 - github.com/coggle/s3-streamlogger 我没有投反对票。我希望有其他一些不那么老套的解决方案以上是关于如何使用 AWS 在 Docker Cloud 中设置链接到 S3 的卷?的主要内容,如果未能解决你的问题,请参考以下文章
如何集成 AWS + ELB + AutoScale + Docker + Spring Cloud
Spring Cloud 微服务(五) 部署到AWS ECS
AWS EC2+Docker+JMeter构建分布式负载测试基础架构