我试图使用Docker安装TimeScaleDB,但是在使用timescaledb并行复制导入数据时会出现以下错误:
/usr/local/bin/docker-entrypoint.sh: bin /docker-entrypoint-initdb.d/import_data.sh timescaledb \usr:未能连接:拨号tcp 172.18.0.2:5432:连接:连接被拒绝( 0xc000060780)由/go/src/github.com/timescale/timescaledb-parallel-copy/cmd/timescaledb-parallel-copy/main.go:148 +0x1d2时标/go/src/github.com/timescale/timescaledb-parallel-copy/cmd/timescaledb-parallel-copy/main.go:148+0x1d2 timescaledb /go/src/github.com/timescale/timescaledb-parallel-copy/cmd/timescaledb-parallel-copy/main.go:148创建的timescaledb +0x8bb timescaledb +0x1d2 timescaledb :未能连接:拨号tcp 172.18.0.2:5432:连接:连接被拒绝
这是我的码头组成和我的码头文件:
码头工人组成:
version: "3.8"
services:
timescaledb:
container_name: timescaledb
build:
context: "./timescaledb"
dockerfile: "docker_file"
env_file:
- "./timescaledb/environment.env"
volumes:
- "./timescaledb/data:/data"
ports:
- "5432:5432/tcp"
networks:
- local_network
restart: on-failure
networks:
local_network:码头档案:
FROM timescale/timescaledb:latest-pg13
ADD create_tables.sql /docker-entrypoint-initdb.d
ADD import_data.sh /docker-entrypoint-initdb.d
RUN chmod a+r /docker-entrypoint-initdb.d/*下面是import_data.sh脚本,它调用timescaledb并行副本:
#!/bin/bash
timescaledb-parallel-copy --connection "host=timescaledb user=postgres password=XXX sslmode=disable" --db-name YYY --table ZZZ --copy-options "CSV" -skip-header --columns "name, unit" --file "/data/data.csv" --reporting-period 30s workers 4我也尝试使用localhost,但是我得到了相同的错误。
发布于 2022-01-12 09:19:07
编辑:问题解决了。不应在连接字符串中指定主机。根据正式文件(https://hub.docker.com/_/postgres):
此外,从docker-
/postgres#440开始,这些初始化脚本启动的临时守护进程只在Unix套接字上侦听,因此任何psql的使用都应该删除主机名部分(例如,请参阅docker/postgres#474(注释))。
https://stackoverflow.com/questions/70650923
复制相似问题