Настройка провайдера объектного хранилища, совместимого с S3, для загрузки файлов

Спасибо за отчет, Ричи. У меня также уже несколько лет работает хранение изображений в AWS S3, и я попал на этот пост через сообщение в консоли. Однако описание вверху ничего не говорит о случае, когда у вас уже есть S3 и нужен только CDN.

Для справки вот что я сделал:

  1. Зашел в консоль AWS, в разделе «Сеть и доставка контента» выбрал CloudFront.
  2. Нажал кнопку «Создать дистрибуцию».
  3. Заполнил довольно очевидную форму; единственное, что действительно нужно было сделать, — выбрать из выпадающего списка свой бакет AWS S3, где хранятся изображения.
  4. Немного подождал, пока завершится конфигурация CloudFront.
  5. В столбце «Имя домена» списка дистрибуций CloudFront появился домен вида <гиперссылка>.cloudfront.net.
  6. Скопировал и вставил этот домен в поле «URL CDN S3» в настройках файлов панели администратора моего сайта.
  7. Провел несколько тестов:
    a. Создал новый пост с загрузкой изображения, и оно действительно оказалось на CloudFront.
    b. Запустил пересборку HTML для нескольких случайных существующих постов с изображениями и увидел, что они тоже были пересобраны с использованием изображений cloudfront.net.
  8. Так как всё выглядело хорошо, я запустил ребейк, что заняло несколько часов, поскольку у меня сейчас около полумиллиона постов:
./launcher enter app
# rake posts:rebake
  1. Всё, похоже, работает корректно. В очередь Sidekiq было добавлено множество задач, по одной на каждый пост, как кажется, которые займут несколько дней на очистку, но система уже начала их обрабатывать.
18 лайков