S3 Bucket для размещения медиа, s3fs mount catch-22
Я пытаюсь использовать ведро S3 для размещения медиа-файлов (изображений, видео и статических файлов) для небольшого веб-приложения, и наткнулся на странную ловушку-22...
Согласно документации S3, для обслуживания статического веб-сайта (это не статический веб-сайт, а просто статические файлы), имя сегмента должно совпадать с именем домена / субдомена, с которого обслуживаются файлы, так что Route53 перечисляет его как Вариант ALIAS под ведрами S3. Я сделал это, назвал ведро media.domain.com
и добавил запись в Route53 в качестве записи для media.domain.com
,
Однако при использовании S3FS для монтирования этого сегмента S3 в файловую систему моего экземпляра EC2 монтирование не удалось из-за точек в имени сегмента: https://github.com/s3fs-fuse/s3fs-fuse/issues/602
Мне нужно смонтировать этот сегмент к экземпляру EC2, потому что нам нужно принять загрузку файлов через микросервис NodeJS и указать место хранения в месте, где сегмент S3 с полными разрешениями на чтение / запись, следовательно, необходимо смонтировать сегмент S3, чтобы микросервис на экземпляре EC2 можно записать в корзину S3.
Подвох-22: Чтобы обслуживать эти статические файлы из S3 с использованием Route53, имя должно совпадать с записью A. Чтобы смонтировать ведро, в имени файла не должно быть точек - у записей есть точки...
У меня вопрос, есть ли у кого-нибудь решение, или он может увидеть общую картину и сказать мне, если я поступаю об этом совершенно неправильно. Я довольно новичок в AWS.
Мы используем S3, а не CloudFlare из-за стоимости, сейчас нам нужно менее дорогое решение.
Спасибо!
1 ответ
Вы можете попробовать обходной путь в FAQ: https://github.com/s3fs-fuse/s3fs-fuse/wiki/FAQ или использовать другие инструменты, такие как Гуфи, который не имеет этого ограничения