在postgres docker容器中创build一个用户
我正在尝试在docker容器中创build一个django应用程序,但是我不知道如何在django使用的postgres容器中创build一个用户。 我想这就是为什么当我启动它(由docker-compose up --build --force-recreate
)它告诉我database_1 | FATAL: role "my_user" does not exist
database_1 | FATAL: role "my_user" does not exist
。 我究竟做错了什么?
docker-compose.yaml
现在看起来像:
version: "3.1" services: database: image: postgres:9.5 environment: POSTGRES_DB: "django_db" POSTGRES_USER: "my_user" POSTGRES_PASSWORD: "my_password" POSTGRES_DATA: /var/lib/postgresql/data/pgdata logging: options: max-size: "10m" max-file: "3" restart: always volumes: - "database:/var/lib/postgresql/data" tmpfs: - "/tmp" - "/run" networks: db-net: django: build: ./ image: django:latest environment: DATABASE_URL: "postgres://my_user:my_pass@database/django_db" ports: - 7445:80
从你docker-compose.yml
我会说你已经在你的数据库中成功创build了用户my_user 。 您可以通过在主机上运行docker exec -ti project_database_1 psql -U my_user -d django_db
来validation。
我build议你看一看cookiecutter-django
。 你可以find一个完整的docker设置,包括JodyT在postgres
容器实际就绪之前启动Django
提到的问题。
这本书的作者是Django的两个范围,也值得一读。
- 如何在Docker中创build多容器Web应用程序
- Django CMSfile upload失败
- 在Docker(Cloudron)中刷新Django应用程序的值
- 图Python 3兼容?
- docker-compoes.yml设置与Django + Gunicorn + NGINX不适用于`docker-compose up`
- 您正在通过HTTPS访问开发服务器,但仅在使用Docker时支持HTTP
- configurationNGINX以正确地将URL转发到Graphite docker映像
- “docker执行”环境不同于“docker运行”/“docker附加”环境?
- Django与Heroku上的Postgresql – 无法将主机名“db”翻译为地址:名称或服务未知