https://medium.com/the-andela-way/deploying-a-python-flask-app-app-to-heroku-41250bda27d0
我正在关注这篇文章,以在Heroku上部署我的烧瓶应用程序。但是,我隐藏了数据库连接键,而没有在我的github存储库上提交它们。
from flask import Flask, jsonify, request
from flask_cors import CORS
from pymongo import MongoClient, TEXT
from langdetect import detect
import json
import utils
import config
connection_str = config.connection_str
db_name = config.db_name
app = Flask(__name__)
cors = CORS(app)
client = MongoClient(connection_str)
db = client.get_database(db_name)
我需要来自utils
的connection_str
和db_name
,并且不承诺。
本文没有解释如何将这些密钥隐藏或从其他地方部署烧瓶应用程序中检索。有帮助吗?
Heroku具有一种提供环境变量的秘密的方法。您可以通过os.environ
访问这些。
设置:
heroku config:set db_name=foo-name
heroku config:set connection_str=your-connection-string-here
访问:
import os
print(os.environ["db_name"])
print(os.environ["connection_str"])
设置环境变量(将您的应用程序更改为应用程序名称(:https://dashboard.heroku.com/apps/yourappname/settings#emb553
获取环境变量:
os.getenv("db_name")
os.getenv("connection_str")