![](/img/trans.png)
[英]Class 'Laravel\Dusk\DuskServiceProvider' not found during Google App Engine Deployment
[英]How to run Laravel migrations on Google App Engine Standard after Deployment
我將Laravel 8與Google App Engine Standard (GAE) 和Google Cloud SQL 一起使用。 App Engine 和 Cloud SQL 之間的連接有效(在控制器中使用簡單的 DB::query 進行了嘗試),因此一切似乎都設置正確。
但是:在將 Laravel 應用程序部署到 GAE 之后,我想運行“ php artisan migrate ”。 所以我嘗試將以下內容添加到我的composer.json :
"post-install-cmd": [
"@php artisan migrate --no-interaction --force",
"@php artisan cache:clear"
]
但是,當我部署應用程序時,運行遷移命令時會引發以下異常:
In Connection.php line 678:
SQLSTATE[HY000] [2002] Connection refused (SQL: select * from information_s
chema.tables where table_schema = forge and table_name = migrations and tab
le_type = 'BASE TABLE')
如您所見,它使用 db“forge”,這是 Laravel 中環境變量“DB_DATABASE”的默認后備值。 因此,當 composer 運行安裝后方法時, app.yaml 中設置的 env_variables 似乎未加載,這也導致缺少數據庫主機。 這就是“連接被拒絕”異常的原因。
您知道如何解決該問題,以便在 composer 運行 migrate 命令時加載正確的環境變量嗎?
我知道這是一個遲到的答案,但我認為你遇到這個問題的原因有很多。
我們只是針對 prod 數據庫在本地運行它們。 不是最好的,但希望這會有所幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.