我正在将自己在计算机上本地开发的Dash应用程序部署到AWS Elastic Beanstalk。我已经创建了EB环境,并已将一些CSV文件和静态图像加载到S3存储桶(位于名为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'))
我该如何精确地从创建EB环境时生成的S3存储桶中提供这些静态文件?我部署到EB环境的当前.zip文件包含application.py
,requirements.txt
和module1.py
。
我试图通过S3控制台公开这些静态文件,然后在application.py
中显式链接S3 URL,但是我不确定这是正确的(或最安全的)方法。
非常感谢任何指导。