Обслуживание статических файлов из приложения S3 Bucket для Dash, развернутого на AWS Elastic Beanstalk - PullRequest
0 голосов
/ 11 января 2019

Я в процессе развертывания приложения Dash, которое я разрабатывал локально на моей машине, в AWS Elastic Beanstalk. Я создал среду EB и загрузил несколько CSV-файлов и статических изображений в S3 Bucket (внутри папки с названием static), предназначенной для обслуживания приложения Dash.

Вероятно, это основной вопрос для человека с небольшим опытом работы с AWS, но как мне указать пути к соответствующим файлам в моем основном application.py файле?

Например, это будет моя локальная файловая структура (обратите внимание, что module1.py импортируется в application.py и содержит некоторые пользовательские классы):

-application.py
-requirements.txt
-module1.py
-static
    -databases
        -csv1.csv
        -csv2.csv
        -csv3.csv
    -images
        -image1.png
        -image2.png

В настоящее время я пытаюсь прочитать мои данные, используя pandas, вот так, и это работает локально:

img = os.path.join(os.getcwd(), 'static/images/image1.png')
df = pd.read_csv(os.path.join(os.getcwd(), 'static/databases/csv1.csv'))

Как именно я могу обслуживать эти статические файлы из моего сегмента S3, который был создан при создании среды EB? Текущий файл .zip, который я развертываю в своей среде EB, содержит application.py, requirements.txt и module1.py.

Моя попытка состояла в том, чтобы сделать эти статические файлы общедоступными через консоль S3, а затем явно связать URL-адрес S3 в application.py, однако я не уверен, что это правильный (или наиболее безопасный) подход.

Любое руководство очень ценится.

...