问题

我的主要目标是在Linux机器上创建一个wordpress容器,以便在该容器上进行开发。

因此,我将使用plugins选项为themesread & write文件夹创建新卷,甚至添加:rw权限。

但是,当我尝试在这些“卷”中创建新目录或文件时,出现一条错误消息(尤其是在VS Code中),该错误消息表明我无权添加这些卷。

此外,基于ll命令的权限显示所有者是唯一拥有w权限的所有者。这意味着我不能使用组www-data并将其添加到我的用户来编辑这些卷。

当我尝试运行chmod 766 themes plugins时,这些卷不再绑定(bind)了,因此该解决方案不起作用。

我已经搜索了整个网络(包括堆栈溢出),但是没有一个答案对我不起作用,所以我迷路了:(

以下是一些可以帮助您找到解决方案的详细信息,包括docker-compose.yml文件。

细节

尝试添加名为hello的目录时VS Code错误

A system error occurred (EACCES: permission denied, mkdir '~/Workspace/WordpressProject/themes/hello')

在终端中运行mkdir hello,返回此错误
mkdir: cannot create directory ‘hello’: Permission denied
卷的ll命令结果
drwxr-xr-x 2 www-data www-data 4096 Jun 14 23:54 plugins/
drwxr-xr-x 5 www-data www-data 4096 May 17 22:00 themes/

docker-compose.yml

version: '3'
services:
  wordpress:
    image: wordpress
    links:
      - mariadb:mysql
    environment:
      - WORDPRESS_DB_PASSWORD=${Database Name}
    ports:
      - "127.0.0.101:80:80"
    hostname: ${Wordpress Host}
    volumes:
      - ./plugins:/var/www/html/wp-content/plugins:rw
      - ./themes:/var/www/html/wp-content/themes:rw
    restart: always
  mariadb:
    image: mariadb
    environment:
      - MYSQL_ROOT_PASSWORD=${Password}
      - MYSQL_DATABASE=${Database Name}
    volumes:
      - ./database:/var/lib/mysql
    restart: always

版本号
  • 操作系统: Ubuntu 18.04 LTS
  • Docker: v18.05.0-ce,API v1.37
  • 编辑器(Visual Studio代码): v1.23.1
  • 最佳答案

    请在VS终端中执行:

    sudo chown -R $USER <directory_project>
    

    10-07 19:12
    查看更多