-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Closed
Labels
Description
The pg client seems to fail quietly when connecting to postgress when using Node 14.x. Tested using Docker.
Dockerfile
FROM node:14.0.0-alpine3.10 as builder
RUN apk add postgresql-client
WORKDIR /src
COPY . .
ENTRYPOINT [ "/bin/sh" ]
package.json
{
"devDependencies": {
"pg": "^8.3.2",
"ts-node": "^8.10.2",
"typescript": "^3.7.5"
}
}
test-pg-client.ts
const { Client } = require('pg');
start();
async function start() {
const conString = "postgres://postgres:(password)@localhost:5432/postgres";
const client = new Client(conString);
await client.connect();
const query = await client.query('select 1');
query.rows.forEach(value => console.info(`row value`, value));
await client.end();
}
Since we're using Docker, let's build and run the image
docker build -t my-image .
docker run -it --network=host my-image
(this runs the image with host network access, allowing you to connect to a postgres database that is running on the same machine. )
Expected Result (while inside the container):
❯ yarn install
❯ ts-node test-pg-client.ts
row value { '?column?': 1 }
Actual Result:
❯ ts-node test-pg-client.ts
(no errors, no messages, just nothing)
The behavior is remedied by changing the first line in Dockerfile to the following:
FROM node:12.18.3-alpine3.12 as builder
This behavior seems similar to #2180 but wasn't totally sure if the circumstances were the same, so chose to make a new issue just in case.
krishchow, tylermaran, jinjor, goldcaddy77, socket-var and 18 morebradleybonitatibus, adriancooney and shenlin192mkosir and alamops