Prerequisiti
Prima di iniziare, assicuriamoci di avere tutto il necessario:
- Un account Google Cloud: Se non ne hai uno, puoi crearne uno .
- Creare un nuovo progetto: Segui le istruzioni o guarda un video .
- Creare un'istanza di App Engine: Consulta questa se necessario.
- Installare Google Cloud SDK: Scarica il Cloud SDK per il tuo sistema operativo .
- Accedere alla console Google Cloud: Esegui il comando
gcloud auth login
per accedere tramite browser. - Impostare il progetto corrente: Utilizza il comando
gcloud config set project project_id
sostituendo "project_id" con il tuo ID progetto.
Creare il File app.yaml
A questo punto, creiamo il file app.yaml
nella stessa cartella di composer.json
con le seguenti configurazioni:
runtime: php
env: flex
runtime_config:
document_root: public
skip_files:
- .env
env_variables:
APP_ENV: local
APP_DEBUG: true
APP_KEY: base64:FqwXmLtL6szdWqIVydb7nKs2eyvHib4lf6d5l6A/XW4=
CACHE_DRIVER: database
SESSION_DRIVER: database
APP_LOG: daily
APP_TIMEZONE: UTC
DB_CONNECTION: mysql
DB_HOST: localhost
DB_DATABASE: instance_id
DB_USERNAME: database_user_name
DB_PASSWORD: database_password
DB_SOCKET: /cloudsql/instance_name
QUEUE_DRIVER: database
MAIL_DRIVER: smtp
# ... (other settings)
beta_settings:
cloud_sql_instances: project:cloudsql-instance
Generare la Chiave dell'App
Utilizza il comando php artisan key:generate --show
per generare la chiave dell'app Laravel e inseriscila nel file app.yaml
.
Aggiornare composer.json
Aggiorna il file composer.json
con i requisiti di Google App Engine:
{
"scripts": {
"post-install-cmd": [
"@php artisan key:generate"
]
}
}
Effettuare il Deploy
Esegui il comando gcloud app deploy
nella directory dell'applicazione per avviare il processo di deploy. Rispondi "Y" quando richiesto e visita il tuo sito tramite gcloud app browse
.
Configurare i Cron Jobs
Per configurare i cron jobs, crea un file cron.yaml
con il seguente contenuto:
cron:
- description: "daily laravel cron"
url: /scheduler
schedule: every 1 mins
retry_parameters:
min_backoff_seconds: 2.5
max_doublings: 5
Aggiungi la route scheduler nel file delle route.
Configurare il Database su Cloud SQL
Segui questi passaggi per configurare il database su Cloud SQL, utilizzando SSL per garantire la sicurezza della connessione.
Importare un Database Esistente
Se hai già un database, puoi importarlo utilizzando Google Bucket. Segui questi passaggi per un'importazione senza problemi.
Visualizzare e Gestire i Dati
Utilizza MySQL Workbench e i certificati forniti da Google per visualizzare e gestire i dati del tuo database in modo sicuro.
Eseguire le Migrazioni e i Seeder
Segui questi passaggi per eseguire le migrazioni e i seeder nel tuo ambiente di produzione.
Conclusioni
Con questa guida dettagliata, hai ora tutte le informazioni necessarie per deployare con successo la tua applicazione Laravel su Google App Engine. Speriamo che questa guida semplifichi il processo per te e riduca eventuali stress o perdite di tempo. Buon coding!