Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
尝试启动时出现Docker compose错误_Docker_Docker Compose - Fatal编程技术网

尝试启动时出现Docker compose错误

尝试启动时出现Docker compose错误,docker,docker-compose,Docker,Docker Compose,我尝试运行docker compose时出现了一个有趣的错误。我已经重新安装了几次虚拟机,一切都是更新和安装,但我不能运行撰写 $ sudo docker-compose up -d Creating network "apache2_default" with the default driver Building mysql ERROR: Error processing tar file(exit status 1): permission denied My docker-compos

我尝试运行docker compose时出现了一个有趣的错误。我已经重新安装了几次虚拟机,一切都是更新和安装,但我不能运行撰写

$ sudo docker-compose up -d
Creating network "apache2_default" with the default driver
Building mysql
ERROR: Error processing tar file(exit status 1): permission denied
My docker-composer.yml文件:

version: '2'
services:
  mysql:
    build: ./mysql
    environment:
      MYSQL_ROOT_PASSWORD: pass
    volumes:
      - db:/var/lib/mysql
  php:
    build: ./php
    ports:
      - '80:80'
    volumes:
      - ./html:/var/www/html
    depends_on:
      - mysql
volumes:
  db:
我在Mac上运行了这个程序,它可以正常工作

编辑:

Dockerfile fot mysql:

FROM mysql:5.7
COPY ./my.cnf /etc/mysql/conf.d/

当生成上下文目录中存在不属于当前用户的文件(或文件夹)时,
docker build
build命令可能会因权限错误而失败

这种情况发生在将卷装载到主机目录时;该目录中的文件可能归root所有

修复非常简单:只需创建一个
.dockrignore
文件,其中包含docker映像构建中您不拥有且不需要的目录/文件的名称


例如:

docker run -d -v $(pwd)/data-volume:/var/lib/mysql mysql
将创建一个
数据卷
目录

如果要构建Dockerfile,则
.dockergnore
中会包含以下内容:


可能会显示dockerfile(如果有)和yml文件您的
mysql
服务的构建失败。请提供相应的
Dockerfile
虚拟机是什么操作系统?什么版本的Docker?如何将
docker compose.yml
文件和代码复制到虚拟机?在虚拟机中,您可以列出文件及其权限吗?
data-volume