簡體   English   中英

在heroku上部署一次運行python腳本

[英]running a python script once on deploy on heroku

我有一個燒瓶應用程序,該應用程序使用的geodis依賴於redisredis充當從geodis映射到經緯度的城市的緩存。

我的這段代碼在heroku上安裝flask Web應用程序時只需運行一次,

from geodis.provider.geonames import GeonamesImporter
import geodis
fileName = os.path.split(geodis.__file__)[0] + "/data/cities1000.json"
importer = GeonamesImporter(fileName, os.getenv("REDIS_HOST"), os.getenv("REDIS_PORT"), 0)
importer.runimport()

如何設置它以便在部署時運行一次?

我認為一種方法是使用應用程序初始化功能。

if __name__ == "__main__":
    fileName = os.path.split(geodis.__file__)[0] + "/data/cities1000.json"
    importer = GeonamesImporter(fileName,
                                os.getenv("REDIS_HOST"),
                                os.getenv("REDIS_PORT"), 0)
    importer.runimport()
    app.run(host='0.0.0.0', port=app.config['PORT']) 

這將在創建應用程序之前運行它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM