2017-09-30 3 views
1

Je suis assez nouveau dans le développement web et beaucoup plus dans Google Cloud, désolé pour quoi que ce soit. Fondamentalement, je fais le backend partie d'une application dans Swift (en utilisant Perfect), et il fonctionne bien et bien sur mon ordinateur local, j'utilise une base de données Postgre locale (en utilisant PostgreORM dans mon application). Mais, quand je le déploie sur Google Cloud, il ne reconnaît pas la base de données (j'ai créé une base de données d'affiches identique dans le moteur de l'ordinateur ET un Cloud SQL (service Postgre de Google Cloud avec les mêmes noms et informations d'identification ?), mais encore une fois, lorsque l'application est sur le nuage, il ne reconnaît pas la base de données, ce que je suis absent Comment dois-je faire installer une autre image docker avec PostgreComment puis-je déployer un code back-up parfait (rapide) + PostgreSQL à Google App Engine

Voici mon code DBConnector:?

import PostgresStORM 

func setupDBCredentials() -> PostgresConnector.Type{ 
    let connection = PostgresConnector.self 

    connection.host = "localhost" // or the connection name of the Google Cloud, it doesn't work as well 
    connection.username = "postgres" 
    connection.password = "nearby" 
    connection.database = "nearby" 
    connection.port = 5432 

    return connection 
} 

Comment puis-je connecter mon code de moteur d'application google à n'importe quelle base de données?

Aussi, si cela aide, j'utilise Perfect Assistant pour déployer mon code sur Google Cloud, en utilisant Docker.

Merci déjà!

Répondre

0

Vous aurez probablement besoin de faire quelques opérations pour vous connecter, par exemple accorder l'accès à l'instance Cloud SQL. Here is the link to the PHP docs qui couvre les grandes étapes que vous voulez suivre et il montre une représentation de la chaîne de connexion dont vous aurez besoin également.

Je crois que votre chaîne de connexion doit ressembler à ceci

pgsql:dbname=DATABASE;host=/cloudsql/CONNECTION_NAME 

CONNECTION_NAME est dans le format de PROJECT_ID:CLOUD_SQL_REGION_ID:CLOUD_SQL_INSTANCE_ID