我有一個可以成功初始化并連接到 Postgresql 數(shù)據(jù)庫的燒瓶應(yīng)用程序。但是,當(dāng)我嘗試 dockerize 這個應(yīng)用程序時,我收到以下錯誤消息?!癝QLALCHEMY_DATABASE_URI”是正確的,我可以連接到它,所以我不知道我哪里出錯了。docker-compose 日志app_1 | File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/url.py", line 60, in __init__app_1 | self.port = int(port)app_1 | ValueError: invalid literal for int() with base 10: 'None'Postgres 數(shù)據(jù)庫在 Docker 容器中成功連接postgres_1 | LOG: database system is ready to accept connections配置文件from os import environimport osRDS_USERNAME = environ.get('RDS_USERNAME')RDS_PASSWORD = environ.get('RDS_PASSWORD')RDS_HOSTNAME = environ.get('RDS_HOSTNAME')RDS_PORT = environ.get('RDS_PORT')RDS_DB_NAME = environ.get('RDS_DB_NAME')SQLALCHEMY_DATABASE_URI = "postgresql+psycopg2://{username}:{password}@{hostname}:{port}/{dbname}"\ .format(username = RDS_USERNAME, password = RDS_PASSWORD, \ hostname = RDS_HOSTNAME, port = RDS_PORT, dbname = RDS_DB_NAME)flask_app.py(入口點(diǎn))def create_app(): app = Flask(__name__, static_folder="./static", template_folder="./static") app.config.from_pyfile('./app/config.py', silent=True) register_blueprint(app) register_extension(app) with app.app_context(): print(db) -> This prints the correct path for SQLALCHEMY_DATABASE_URI db.create_all() db.session.commit() return appdef register_blueprint(app): app.register_blueprint(view_blueprint) app.register_blueprint(race_blueprint)def register_extension(app): db.init_app(app) migrate.init_app(app)app = create_app()if __name__ == '__main__': app.run(host='0.0.0.0', port=8080, debug=True)
Docker、Flask、SQLAlchemy:ValueError:int() 的無效文字
人到中年有點(diǎn)甜
2021-06-03 22:21:54