你好,我得到这个错误后,我运行docker-compose构建
但是我得到这个错误postgres_1|错误:数据库未初始化,且未指定超级用户密码。
下面是错误的快照!x1c 0d1x的数据
下面是我的docker-compose.yml文件
版本:'3.6'
Server.js文件
services:
smart-brain-api:
container_name: backend
build: ./
command: npm start
working_dir: /usr/src/smart-brain-api
ports:
- "3000:3000"
volumes:
- ./:/usr/src/smart-brain-api
#PostGres Database
postgres:
image: postgres
ports:
- "5432:5432"
字符串
7条答案
按热度按时间xytpbqjk1#
您可以通过对
docker-compose.yml
进行以下更改来使用POSTGRES_HOST_AUTH_METHOD
环境属性。字符串
以上将解决错误。
eoigrqb62#
为了避免这种情况,你可以在docker-compose文件中为postgres容器指定以下环境变量。
POSTGRES_PASSWORD此环境变量通常是使用PostgreSQL映像所必需的。此环境变量设置PostgreSQL的超级用户密码。默认超级用户由POSTGRES_USER环境变量定义。
POSTGRES_DB此可选环境变量可用于为镜像首次启动时创建的默认数据库定义不同的名称。如果未指定,则将使用POSTGRES_USER的值。
有关环境变量的详细信息,请检查:https://hub.docker.com/_/postgres
pkwftd7m3#
在交互模式中已经提到过;如何运行容器,如果找不到,请使用以下方法:
要允许所有连接而无需密码,请用途:
要为超级用户指定postgres密码,请用途:
niwlg2el4#
总结一下docker官方网站上的命令:
字符串
gijlo24d5#
你可以对你的docker-compose.yml文件进行修改,比如:
db:image:postgres:13环境:- “POSTGRES_HOST_AUTH_METHOD=trust”
kulphzqa6#
您可以使用下面的docker命令进行连接。
docker run -e POSTGRES_PASSWORD= <your_password>postgres:9.6.
zfciruhq7#
yml语言是空间敏感的,所以