У меня есть Dockerfile, который явно определяет, какие директоры и файлы из контекстного каталога копируются в каталог приложения.Но независимо от этого Docker пытается скопировать все файлы в контекстном каталоге.
Dockerfile находится в контекстном каталоге.
Мой тестовый код и файлы данных находятся в каталогах непосредственно под контекстным каталогом.Он пытается скопировать все в контекстную директорию, а не только директории и файлы, указанные моими командами COPY.Таким образом, я получаю несколько сотен этих следующих сообщений об ОШИБКАХ, за исключением указания каждого файла в каждом каталоге и подкаталоге:
ERRO[0043] Can't add file /home/david/gitlab/etl/testdata/test_s3_fetched.csv to tar: archive/tar: missed writing 12029507 bytes
...
ERRO[0043] Can't close tar writer: archive/tar: missed writing 12029507 bytes
Sending build context to Docker daemon 1.164GB
Error response from daemon: Error processing tar file(exit status 1): unexpected EOF
Мое прочтение ссылки состоит в том, что он копирует все файлы и каталоги только при наличиинет директив ADD или COPY.
Я пробовал использовать следующие шаблоны COPY
COPY ./name/ /app/name
COPY name/ /app/name
COPY name /app/name
WORKDIR /app
COPY ./name/ /name
WORKDIR /app
COPY name/ /name
WORKDIR /app
COPY name /name
Мой Dockerfile:
FROM python3.7.3-alpine3.9
RUN apk update && apk upgrade && apk add bash
# Copy app
WORKDIR /app
COPY app /app
COPY configfiles /configfiles
COPY logs /logs/
COPY errorfiles /errorfiles
COPY shell /shell
COPY ./*.py .
WORKDIR ../
COPY requirements.txt /tmp/
RUN pip install -U pip && pip install -U sphinx && pip install -r /tmp/requirements.txt
EXPOSE 22 80 8887
Я ожидаю, что он скопирует только мои файлыбез ошибок, связанных с попыткой копирования файлов, я не указал в командах COPY.Поскольку выходные данные Docker прокручиваются из окна моего терминала из-за сообщений об ошибках aqll thew, я не вижу, удалось ли это с моими командами COPY.