gpt4 book ai didi

postgresql - 由于docker上的权限被拒绝而无法创建postgres用户

转载 作者:行者123 更新时间:2023-12-02 18:57:41 24 4
gpt4 key购买 nike

检查该卷时,我从postgres拒绝了此权限。
由于此权限问题,未创建我的用户和数据库。我可以通过运行docker exec -it <cont_name> bin/bash命令并检查postgres容器来确认这一点,并且没有用户。
在重新格式化Mac图书之前,这没有发生,所以我不知道发生了什么。我正在运行macOS catalina并正在运行最新的docker。
enter image description here
这是我的yml文件的数据库服务

db:
image: postgres:9.6
environment:
- DB_USER=sales_store # used by psql to create rails user
- DB_PASSWORD=localpostgres # used by psql to create rails user
- POSTGRES_PASSWORD=localpostgressu # used by psql
- DB_RESTORE_DATABASE=sales_store_development
deploy:
placement:
constraints: [node.role==manager]
ports:
- "5432:5432"
volumes:
- db-data:/var/lib/postgresql/data # mount data to host
- ./init/db/0-init-user-db.sh:/docker-entrypoint-initdb.d/0-init-user-db.sh # database init (fork of sales-store's init)

# restore from .sql.gz file
- ./backup/db/sales_store_ist.sql.gz:/1-restore-backup.sql.gz # copy backup file to container
- ./init/db/1-restore-backup.sh:/docker-entrypoint-initdb.d/1-restore-backup.sh # run psql restore;
networks:
- db-network
我为解决此问题所做的操作但没有成功:
  • 我尝试从此link运行此命令chmod +x docker-entrypoint.sh-但没有用
  • 我授予了对我的卷文件夹的读写权限---但是没有用

  • 我读了这个 Initialize PostgreSQL Container with docker-entrypoint-initdb.d script
    但他通过更改yml文件来修复它。我不想这样做,因为我之前从未做过,并且一直运行到我重新格式化Mac为止。我假设它是我的 docker ?还是我的根文件夹,我需要授予所有人读写权限?
    谢谢!

    最佳答案

    您好,我终于在这个bit子上找到了答案。花了我6个小时没有开 Jest 。因此,解决方案非常简单,您只需要授予shell脚本执行权限即可。

    enter image description here
    所以这2个.sh文件仅具有读取权限,所以我只需要运行chmod 777 <file_name>命令即可。现在,每个用户都可以执行读写操作。不建议这样做。但是对我来说,我只需要尝试一下就可以确保(绝望)。另外,我正在更改父文件夹权限,因为我认为它会传播到子文件夹和文件。

    关于postgresql - 由于docker上的权限被拒绝而无法创建postgres用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64519679/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com