ECONNREFUSED 127.0.0.1:3306 - "Unknown database error" dopo aggiornamento immagine Ghost in Docker
Risoluzione errore "ECONNREFUSED 127.0.0.1:3306 - "Unknown database error"" dopo aver aggiornato l'immagine di Ghost in Docker.
Questo è dovuto al fatto che Ghost dalla versione 5.0 ha annunciato che MySQL 8 sarebbe stato l'unico database ufficialmente supportato negli ambienti di produzione, ed è quindi quello attivato di default, ma se noi avevamo tutto su SQLite e vogliamo continuare ad utilizzarlo, niente paura, di seguito i metodi di risoluzione:
CLI
- Ferma e rimuovi il container Ghost esistente:
docker stop nome_container
docker rm nome_container
2. Ricrea un nuovo container docker con le seguenti variabili:
-e database__client=sqlite3 \
-e database__connection__filename="content/data/ghost.db" \
-e database__useNullAsDefault=true \
-e database__debug=false \
Esempio:
docker run -d --name ghost -e NODE_ENV=development -e database__client=sqlite3 -e database__connection__filename="content/data/ghost.db" -e database__useNullAsDefault=true ghost
Portainer
- Fermiamo il container cliccando su "Stop";
- Clicchiamo su "Duplicate/Edit";
3. Â Nella sezione in basso "Advanced container settings" clicchiamo su "Env":
4. Â Clicchiamo su "Add an environment variable" e aggiungiamo le 3 variabili:
name | value |
---|---|
database__client | sqlite3 |
database__connection__filename | "content/data/ghost.db" |
database__useNullAsDefault | true |
6.  Infine clicchiamo su "Deploy the container" e il gioco è fatto.