[英]How do I connect to an external Oracle database using the Python cx_Oracle package on Google App Engine Flex?
我的Python App Engine Flex應用程序需要連接到外部Oracle數據庫。 當前,我正在使用cx_Oracle Python軟件包,該軟件包要求我安裝Oracle Instant Client 。
我已按照Instant Client安裝步驟在本地(在macOS上)成功運行了該程序。 這些步驟要求我執行以下操作:
/opt/oracle
的目錄 /opt/oracle/instantclient_12_2/libclntsh.dylib.12.1
到~/lib/
的符號鏈接 但是,我對如何在App Engine Flex中執行相同的操作感到困惑( 指示 )。 具體來說,這是我感到困惑的地方:
sudo yum install libaio
來安裝libaio
軟件包。 如何在GAE Flex上執行此操作? 還是該軟件包已經可用? app.yaml
設置LD_LIBRARY_PATH
環境變量以export LD_LIBRARY_PATH=/opt/oracle/instantclient_12_2:$LD_LIBRARY_PATH
。 這樣行嗎? 總的來說,我不確定自己是否走對了。 希望收到以前處理過此問題的人的來信:)
如果您提供的任何依賴項在Google提供的基本GAE flex映像中不可用,並且無法通過pip
進行安裝(因為它不是python軟件包,或者在PyPI中不可用,或出於其他任何原因),那么您將無法使用這些requirements.txt
文件以將其安裝在您的GAE flex應用中。
滿足這種依賴性的正確方法是構建自己的自定義運行時。 關於自定義運行時 :
自定義運行時允許您定義新的運行時環境,其中可能包括其他組件,例如語言解釋器或應用程序服務器。
是的,這意味着要提供一個自定義的Docker文件。 在特定情況下,您將在此Dockerfile中安裝Instant Client和libaio
。 另請參閱構建自定義運行時 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.