У меня есть приложение, работающее на сервере Digital Ocean, и есть две папки, которые обновляются загруженными пользователем изображениями.
Можно ли автоматически переносить новые закачки из папки сервера в корзину s3.
Я уже настроил AWS CLI на сервере ubuntu.
Спасибо
Вы также можете попробовать Клиент Minio aka mc, с открытым исходным кодом и совместимым с S3 API. Ты можешь использовать mc mirror
команда для архивации каталогов.
Установка клиента minio:
$ wget https://dl.minio.io/client/mc/release/linux-amd64/mc
$ chmod 755 mc
$ ./mc --help
Настройка mc для Amazon S3:
$ ./mc config host add <ALIAS> <YOUR-S3-ENDPOINT> <YOUR-ACCESS-KEY> <YOUR-SECRET-KEY>
пример
$ ./mc config host add mys3 https://s3.amazonaws.com BKIKJAA5BMMU2RHO6IBB V7f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12
Копирование локальной папки в AWS S3:
$ ./mc mb mys3/mys3baucket
$ ./mc mirror mylocaldir/ mys3/mys3baucket
Первая команда создает корзину с именем mys3baucket. Вторая команда зеркально отображает локальный каталог в корзину S3 по имени. Это можно легко установить в cron
для периодического зеркала.
mc
реализует следующие команды:
ls List files and folders.
mb Make a bucket or folder.
cat Display contents of a file.
pipe Write contents of stdin to one or more targets. When no target is specified, it writes to stdout.
share Generate URL for sharing.
cp Copy one or more objects to a target.
mirror Mirror folders recursively from a single source to many destinations.
diff Compute differences between two folders.
rm Remove file or bucket [WARNING: Use with care].
access Manage bucket access permissions.
session Manage saved sessions of cp and mirror operations.
config Manage configuration file.
update Check for a new software update.
version Print version.
Надеюсь, поможет.
Отказ от ответственности: я работаю на Минио
На мой взгляд, здесь нет идеального решения, но вы можете попробовать два обходных пути:
Это работает как своего рода rsync.
Лучшей реализацией вашего веб-приложения будет прямая загрузка и извлечение в корзину S3. S3 разработан специально для этого использования и предлагает приятные трюки, такие как проверка на основе формы.