【问题标题】:docker-compose up postgresql error, chown: changing ownership of ‘/var/lib/postgresql/data’: Operation not permitteddocker-compose up postgresql 错误,chown:更改“/var/lib/postgresql/data”的所有权:不允许操作
【发布时间】:2017-06-20 21:32:48
【问题描述】:

我在一个项目中工作,我们使用 docker。该项目在上周五之前一直很好,今天我启动计算机(mac mini - macOS Sierra 版本 10.12.5 (16F73))时出现错误。 我正在尝试运行docker-compose -f dev.yml -f docker-compose.yml up,但是当我执行此操作时,它会返回以下消息:

db_1 | chmod: changing permissions of ‘/var/lib/postgresql/data’: Operation not permitted.

我已经删除了所有 docker 容器和图像docker rm $(docker ps -a -q)docker rmi $(docker images -q)但错误仍然存​​在。

我的 docker-compose.yml 是这样的:

 version: '2'

 services:

 rabbitmq:
     restart: always
     image: rabbitmq:3.6
     environment:
       RABBITMQ_DEFAULT_USER: my_user
       RABBITMQ_DEFAULT_PASS: my_password
     ports:
       - "5672:5672"
       - "15672:15672"
   django:
     build: ./django
     command: gunicorn contactto.wsgi:application -b 0.0.0.0:8000
     environment: 
       - "TZ=Brazil/East"
     restart: always
     volumes: 
       - ./django:/usr/src/app
       - ./django/static:/usr/src/app/contactto/static
       - ./logs:/logs/
       - /asterisk/:/etc/asterisk/
     ports:
       - "8000:8000"
     links:
       - rabbitmq:rabbitmq
   node:
     build: ./node_6_8
     environment:
       - "TZ=Brazil/East"
     volumes_from:
       - django
   nginx:
     build: ./nginx
     restart: always
     environment: 
       - "TZ=Brazil/East"
     ports:
       - "80:80"
       - "443:443"
     volumes: 
       - /www/static
     volumes_from:
       - django
     links:
       - django:django
   worker:
     build: ./django
     command: su -m worker -c "celery worker -A contactto.celeryconf -Q default -n default@%h"
     environment: 
       - "TZ=Brazil/East"
     restart: always
     volumes:
       - ./django:/usr/src/app
       - ./django/static:/usr/src/app/contactto/static
       - ./logs:/logs/
       - /asterisk/:/etc/asterisk/
     links:
       - rabbitmq:rabbitmq

 volumes: 
   dbdata:

我的 dev.yml 是这样的:

version: '2'

services:
  db:
    image: postgres:9.5
    restart: always
    environment:
      POSTGRES_USER: my_user
      POSTGRES_PASSWORD: my_password
      POSTGRES_DB: my_db
    volumes:
      - /psqldata:/var/lib/postgresql/data
  django:
    environment:
      - "DJANGO_CONFIG_MODE=Development"
    depends_on:
      - db
  worker:
    environment:
      - "DJANGO_CONFIG_MODE=Development"
    links:
      - db:db

任何帮助将不胜感激。

【问题讨论】:

  • 请发布您正在使用的 docker-compose.yml。
  • 好的,我现在插入了这个文件。
  • 我正在用mysql尝试这个方法并继续获取db_1 | chown: changing ownership of '/var/lib/mysql/': Operation not permitted

标签: docker docker-compose postgresql-9.5


【解决方案1】:

我在/ 输入并继续分析文件夹。然后我在那里设置了命令ls -la,我看到该文件夹​​与root 用户一起使用。首先,我删除了文件夹sudo rm -rf psqldata,在我设置权限sudo chmod 777 / 以使用我的用户mkdir psqldata 创建文件夹后,现在它可以工作了。我不知道为什么在它工作之前它突然停止了。我希望这个答案也能帮助到你。

旧文件夹ls -la drwxr-xr-x 2 root wheel 68 Jun 19 14:58 psqldata

新文件夹ls -la drwxr-xr-x 2 gtmiyabe wheel 68 Jun 20 10:07 psqldata

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-12-14
    • 1970-01-01
    • 2019-07-22
    • 2022-08-02
    • 2021-01-03
    • 1970-01-01
    • 2019-01-23
    相关资源
    最近更新 更多