PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 Re : PHP » [résolu] docker et PDO pgsql » 22/07/2015 17:12:10

J'ai résolu l'erreur, il manquait -p 5432:5432.
Nénamoins l'approche n'est pas la bonne, car je suis obligé de mettre un sleep(5) en attendant que le server postgre s'active, on m'a recommandé de mettre en place un conteuneur php chargé de lancer les tests et qui serait lié à un conteneur postgre-sql

#2 PHP » [résolu] docker et PDO pgsql » 21/07/2015 19:27:28

bouhda
Réponses : 2

Bonjour !

A des fins de tests automatisés j'essaie d'utiliser docker dans mon workflow de test. J'utilise l'image officielle prise sur dockerhub.

Dans une fonction setUp() j'ai le code suivant:

        echo 'starting postgresql docker image';
        echo shell_exec('docker run --name test-postgres -e POSTGRES_PASSWORD=test -d postgres');
        echo shell_exec('docker start test-postgres');
        sleep(3);


Une fois que cette fonction est lancée j'essaie d'instancier un objet pdo comme suivant :

new \PDO('pgsql:host=127.0.0.1;port=5432;dbname=postgres;user=postgres;password=test');


Mais ll'erreur suivante est retournée :

exception 'PDOException' with message 'SQLSTATE[08006] [7] could not connect to server: Connection refused
==>     Is the server running on host "127.0.0.1" and accepting
==>     TCP/IP connections on port 5432?' in /var/www/PostGreSqlJsonRepository/src/ConnectionFactory.php:22



Quand je lance l'image manuellement j'arrive à me connecter au server en rentrant :
pgsql -h 127.0.0.1 postgres postgres

Bien à vous

bouhda

Pied de page des forums

Propulsé par FluxBB