所以我的devops朋友使用docker cloud为我的应用程序设置了一个环境。他设置了一些临时数据库密码,并告诉我在docker-compose.yml
,docker-cloud.yml
文件中更改它们。我的docker-cloud.yml
文件如下所示:
db:
image: mdillon/postgis:9.6
ports:
- "5432:5432"
environment:
POSTGRES_PASSWORD: temppasswd
POSTGRES_USER: myuser
POSTGRES_DB: mydb
web:
autoredeploy: true
image: myapp/myapp_api:latest
ports:
- "80:8000"
links:
- db
environment:
DATABASE_NAME: mydb
DATABASE_USER: myuser
DATABASE_PASSWORD: temppasswd
cron:
autoredeploy: true
image: myapp/myapp_api:latest
links:
- db
command: cron -f -L 15
他还告诉我更改docker cloud stack中的密码并进行重新部署 - 这没有效果。含义:新密码不起作用,我仍然可以使用旧密码登录。那么如何更改该密码呢?
答案 0 :(得分:0)
首次启动容器时,POST GRES_USER设置一次。如果在下次启动时删除容器,数据库将重新初始化您的更改。
删除容器也会删除所有数据。如果您不想这样做,请在运行时登录容器并手动更改密码。
psql -h <host> -U myuser
然后
alter role myuser password 'temppasswd';