无法计算引用的校验和[重复]

问题描述 投票:0回答:1

Dockerfile

FROM python:3.10.2-slim-bullseye

# Set environment variables
ENV PIP_DISABLE_PIP_VERSION_CHECK 1
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1

# Set work directory
WORKDIR /code

# Install dependencies
COPY /home/michael/PycharmProjects/django_project/requirements.txt .
RUN pip install -r requirements.txt

# Copy project
COPY /home/michael/PycharmProjects/django_project/ .

docker-compose.yml

version: "3.9"
services:
  pcask:
    build: .
    ports:
      - "8000:8000"
    command: python manage.py runserver 0.0.0.0:8000
    volumes:
      - .:/code
  db:
    image: postgres:15
    volumes:
      - postgres_data:/var/lib/postgresql/data/
      - postgres_dumpdata:/var/lib/dumpdata/
    environment:
      - "POSTGRES_HOST_AUTH_METHOD=trust"

volumes:
  postgres_data:
  postgres_dumpdata:

networks:
  routing:
    name: routing
    external: true

问题

michael@michael:~/PycharmProjects/django_project/docker_files/pcask$ sudo docker compose up --build
[+] Building 1.5s (9/9) FINISHED                                                
 => [pcask internal] load build definition from Dockerfile                 0.1s
 => => transferring dockerfile: 423B                                       0.0s
 => [pcask internal] load .dockerignore                                    0.0s
 => => transferring context: 2B                                            0.0s
 => [pcask internal] load metadata for docker.io/library/python:3.10.2-sl  1.3s
 => [pcask internal] load build context                                    0.0s
 => => transferring context: 2B                                            0.0s
 => [pcask 1/5] FROM docker.io/library/python:3.10.2-slim-bullseye@sha256  0.0s
 => CACHED [pcask 2/5] WORKDIR /code                                       0.0s
 => ERROR [pcask 3/5] COPY /home/michael/PycharmProjects/django_project/r  0.0s
 => CACHED [pcask 4/5] RUN pip install -r requirements.txt                 0.0s
 => ERROR [pcask 5/5] COPY /home/michael/PycharmProjects/django_project/   0.0s
------
 > [pcask 3/5] COPY /home/michael/PycharmProjects/django_project/requirements.txt .:
------
------
 > [pcask 5/5] COPY /home/michael/PycharmProjects/django_project/ .:
------
failed to solve: failed to compute cache key: failed to calculate checksum of ref cbba007b-59ed-412e-8cd4-90c94ea98a1e::lq17qgdoi8v4wutiencqcws4a: "/home/michael/PycharmProjects/django_project": not found

但我使用了绝对路径以避免任何误解。并仔细检查路径:

enter image description here

接下来我可以尝试什么?

docker docker-compose dockerfile
1个回答
2
投票

所有 COPY 命令必须引用构建上下文中可用的文件,即包含 Dockerfile 的目录。

因此,您应该确保所有必需的文件都放置在 Dockerfile 目录中,以便 Dockerfile 中的 COPY 指令可以找到源文件并将其复制到 Docker 镜像中。

© www.soinside.com 2019 - 2024. All rights reserved.