Cloc не выполняет рекурсивный поиск в контейнере Docker

Когда я запускаю cloc внутри docker-контейнера, он, кажется, не рекурсивно просматривает данные каталоги по сравнению с его автономным выполнением.

Dockerfile:

FROM python:3.6.2-alpine3.6

VOLUME "/data"
WORKDIR /data

RUN apk --no-cache add cloc=1.72-r2

Запустив cloc без docker-контейнера, я получаю следующее:

cloc src\main\java\ --by-file --unix --report-file=temp.csv
      19 text files.
      19 unique files.
      12 files ignored.
Wrote temp.csv

При запуске его с док-контейнером происходит следующее:

docker run --rm -it -v C:\repos\code-repository\:/data cloc-image cloc src/main/java --by-file --unix --report-file=/data/temp2.csv
       0 text files.
       0 unique files.
       2 files ignored.

Есть идеи? Я имею:

  • Проверил права пользователя в докере контейнера (root).
  • С помощью ash Я проверил внутри контейнера, правильно ли отображен том, и все ли файлы присутствовали.
  • Проверяется, действительно ли версия cloc внутри контейнера действительно совпадает с версией локальной установки (обе версии 1.72).

РЕДАКТИРОВАТЬ 1:

Интересно, что такое поведение проявляется только в Windows, тот же Dockerfile/ контейнер отлично работает на Linux-машине.

0 ответов

Я столкнулся с той же проблемой на debian:stretchконтейнер на Docker для Windows, где том cloc был запущен против был локальный каталог. Решение было добавить --follow-links в cloc:

$ cloc .

# Only returned results of top-level directory

Fix:

$ cloc --follow-links .

# Included nested files
Другие вопросы по тегам