weblate connect to aws rds postgres



我正在尝试将webrate连接到外部rds postgres数据库。我正在使用docker编写运行weblate容器的文件。在这个容器中,我添加了连接到rds-postgres的环境变量。weblate容器没有连接到rds-postgres,并给我这个错误:

psql: error: connection to server at "XXXX.rds.amazonaws.com", port 5432 failed: FATAL:  password authentication failed for user "postgres"

但是,如果我尝试通过cli从weblate容器内部连接到rds-postgres,它会起作用。

docker组合文件:

version: '3'
services:
weblate:
image: weblate/weblate
tmpfs:
- /app/cache
volumes:
- weblate-data:/app/data
env_file:
- ./environment
restart: always
ports:
- 80:8080
environment:
POSTGRES_PASSWORD: XXXX
POSTGRES_USER: myuser
POSTGRES_DATABASE: mydb
POSTGRES_HOST: XXX.rds.amazonaws.com
POSTGRES_PORT: 5432

当您的配置状态为myuser时,它会尝试作为postgres用户进行连接。也许./environment文件覆盖了它?

我发现了问题。问题是密码内的char$

也许用于连接postgres的库有一个错误,或者,简单地说,密码字符串中不允许$。当我去掉那个炭时,它就起作用了。

最新更新