Travis-CI and PostgreSQL: psql: error: could not connect to server: No such file or directory
Travis-CI and PostgreSQL: psql: error: could not connect to server: No such file or directory
我正在尝试为我的 Travis-CI 构建获取 PostgreSQL 12 数据库。我已经尝试了几个小时。我查看了 Travis-CI 社区和 Whosebug 上的其他主题。但我没有取得任何进展,而且一直失败。
我正在使用 dist: focal
所以它有 PostgreSQL 12.2。所以我不需要搞乱 addons: postgres: '12'
和 apt: ...
psql --version
命令有效,但 psql -c 'create database ...
命令无效。
如果我删除 psql -c 'create database ...
命令,我的应用程序由于缺少数据库而无法启动,
Caused by: org.postgresql.util.PSQLException at ConnectionFactoryImpl.java:303
Caused by: java.net.ConnectException at Net.java:-2
是的,我已经阅读了 Travis Database Setup 文档。
Travis 构建的 link 是:lukegjpotter/pokemon-team-building-tools/jobs/480144598.
请帮助。
我的travis.yml文件中的相关行如下:
language: java
os: linux
dist: focal
jdk: oraclejdk13
services:
- postgresql
before_script:
- cp config/database.yml.travis config/database.yml
- psql --version
- psql -c 'create database travis_ci_test;' -U postgres
env: DATABASE_URL=postgres://postgres:@localhost:5432/travis_ci_test
我的构建输出中的相关行如下:
$ psql --version
psql (PostgreSQL) 12.5 (Ubuntu 12.5-0ubuntu0.20.04.1)
$ psql -c 'create database travis_ci_test;' -U postgres
psql: error: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
The command "psql -c 'create database travis_ci_test;' -U postgres" failed and exited with 2 during .
此致,
卢克
问题是错误消息中的端口号。
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
在某些发行版和 postgres 版本上,Postgres 在端口 5432
上运行。
在 dist: focal
和 services: postgresql
上,端口是 5433
。 psql
命令使用端口 5432
.
要解决这个问题,您需要将 -p 5433
添加到 psql
命令:
$ psql -c 'CREATE DATABASE travis_ci_test;' -U postgres -p 5433
这将给出一个新的错误;
psql: error: FATAL: Peer authentication failed for user "postgres"
The command "psql -c 'CREATE DATABASE travis_ci_test;' -U postgres -p 5433" failed and exited with 2 during .
但这是另一天的错误。
我正在尝试为我的 Travis-CI 构建获取 PostgreSQL 12 数据库。我已经尝试了几个小时。我查看了 Travis-CI 社区和 Whosebug 上的其他主题。但我没有取得任何进展,而且一直失败。
我正在使用 dist: focal
所以它有 PostgreSQL 12.2。所以我不需要搞乱 addons: postgres: '12'
和 apt: ...
psql --version
命令有效,但 psql -c 'create database ...
命令无效。
如果我删除 psql -c 'create database ...
命令,我的应用程序由于缺少数据库而无法启动,
Caused by: org.postgresql.util.PSQLException at ConnectionFactoryImpl.java:303
Caused by: java.net.ConnectException at Net.java:-2
是的,我已经阅读了 Travis Database Setup 文档。
Travis 构建的 link 是:lukegjpotter/pokemon-team-building-tools/jobs/480144598.
请帮助。
我的travis.yml文件中的相关行如下:
language: java
os: linux
dist: focal
jdk: oraclejdk13
services:
- postgresql
before_script:
- cp config/database.yml.travis config/database.yml
- psql --version
- psql -c 'create database travis_ci_test;' -U postgres
env: DATABASE_URL=postgres://postgres:@localhost:5432/travis_ci_test
我的构建输出中的相关行如下:
$ psql --version
psql (PostgreSQL) 12.5 (Ubuntu 12.5-0ubuntu0.20.04.1)
$ psql -c 'create database travis_ci_test;' -U postgres
psql: error: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
The command "psql -c 'create database travis_ci_test;' -U postgres" failed and exited with 2 during .
此致, 卢克
问题是错误消息中的端口号。
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
在某些发行版和 postgres 版本上,Postgres 在端口 5432
上运行。
在 dist: focal
和 services: postgresql
上,端口是 5433
。 psql
命令使用端口 5432
.
要解决这个问题,您需要将 -p 5433
添加到 psql
命令:
$ psql -c 'CREATE DATABASE travis_ci_test;' -U postgres -p 5433
这将给出一个新的错误;
psql: error: FATAL: Peer authentication failed for user "postgres"
The command "psql -c 'CREATE DATABASE travis_ci_test;' -U postgres -p 5433" failed and exited with 2 during .
但这是另一天的错误。