提问者:小点点

为什么docker compose build没有给我这样的文件或目录错误消息


我想设置一个laravel开发环境使用docker和docker撰写。我无法构建我的Dockerfile。

我遵循了教程,但没有成功:

  • https://github.com/BretFisher/php-docker-good-defaults
  • https://dev.to/aschmelyun/the-beauty-of-docker-for-local-laravel-development-13c0
  • https://www.digitalocean.com/community/tutorials/how-to-set-up-laravel-nginx-and-mysql-with-docker-compose

当我使用sudo docker exec-it php sh时,我登录到php实例,并能够运行作曲家安装。

docker-compose.yml

  build:
    context: .
    dockerfile: Dockerfile
  container_name: php
  restart: unless-stopped
  tty: true
  volumes:
    - ./src:/var/www                                                                                                  
  ports:                                                                                                   
    - "9000:9000"                                                                                                 
  networks:                                                                                                   
    - laravel

Dockerfile

FROM php:7.0-fpm-alpine
WORKDIR /var/www
COPY composer.lock composer.json /var/www

步骤3/3:复制composer.lockcomposer.json /var/www/错误:服务'php'未能构建:复制失败:统计 /var/lib/docker/tmp/docker-builder015559251/composer.lock:没有这样的文件或目录


共1个答案

匿名用户

以防万一有人在这里着陆:

我的docker文件中有一行:

COPY composer.lock composer.json /var/www

应该是:“‘复制src/composer.locksrc/composer.json。"'

实际上,您的复制自路径(前两个参数)是相对于Dockerfile的。粘贴到路径是相对于WORKDIR的,WORKDIR已经设置为/var/www。

我希望这能有所帮助,但如果有什么我需要澄清的,请发表评论。