![](/img/trans.png)
[英]GitLab CI with Postgres ERROR: connect ECONNREFUSED 127.0.0.1:5432
[英]ERROR: connect ECONNREFUSED 127.0.0.1:5432 on Gitlab CI
我目前正在做一個項目,我有一個關於 Gitlab 的 CI 的大問題。 使用docker-compose
構建了兩個容器,一個是 API,另一個是 PostgreSQL 數據庫。
這是我的 gitlab-ci.yml :
image: node:lastest
variables:
POSTGRES_DB: test
POSTGRES_USER: user
POSTGRES_PASSWORD: pass
POSTGRES_HOST: postgres
POSTGRES_PORT: 5432
POSTGRES_HOST_AUTH_METHOD: trust
NODE_ENV: test
services:
- postgres:12.2-alpine
stages:
- test
eslint:
stage: test
image: node:12.18.2-alpine3.9
before_script:
- npm install
script:
- npm run linter
except:
- develop
audit:
stage: test
image: node:12.18.2-alpine3.9
before_script:
- npm install
- npm install -g sequelize-cli
- npx sequelize-cli db:create
script:
- npm test
allow_failure: false
except:
- develop
所以,我收到了這個錯誤:
$ npx sequelize-cli db:create
Sequelize CLI [Node: 12.18.2, CLI: 6.2.0, ORM: 6.3.5]
Loaded configuration file "config/database.js".
Using environment "development".
ERROR: connect ECONNREFUSED 127.0.0.1:5432
Cleaning up file based variables
00:01
ERROR: Job failed: exit code 1
我錯過了什么?
謝謝 !
主要問題應該在你的config/database.js
文件中。
檢查此文件中的主機是否為postgres
而不是127.0.0.1
看起來你的 npm 命令沒有在變量部分使用 POSTGRES_HOST 。 相反,它在連接到 postgres 時使用 127.0.0.1 並失敗,因為您的服務未在本地運行。 解決這個問題,它應該在postgres
上可用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.