2017-02-22 9 views
5

Próbuję wykluczyć z mojego obrazu Docker wszystkie ukryte pliki (zaczynając od kropki) ze wszystkich katalogów projektu.Z wyłączeniem wszystkich ukrytych plików z .dockerignore

Aby wykluczyć .git i .gitingore: .git*

Aby wykluczyć wszystkie .keep pliki: **/.keep działa

Dla wszystkich ukrytych plików, próbowałem: **/.*, ale to wyklucza wszystkie pliki zawierające kropkę, jak **/*.* robi.

Odpowiedz

2

Spróbuj przestrzegać reguł Go według filepath.Match z dodatkiem globu podobnego do ** pasującego do dowolnych katalogów w ścieżce. Więc nie są dokładnie takie same jak wzorce globu, a nawet starają się być. W rzeczywistości Docker zaimplementował it's own parser, więc nawet nie używa już filepath.Match.

Używanie dir/.* i dir/*/.* działa zgodnie z oczekiwaniami. Ale dir/**/.* wydaje się nie działać cały czas.

Ten specific issue should be resolved, ale myślę, że widziałem to samo zachowanie w 1.13.1 w pewnych okolicznościach.

Tak więc z .dockerignore z dir/**/.* plik dir/file.ext zostanie wykluczony, ale zostanie dołączone .

To chyba warto otwarcie new issue with Docker if you have a specific reproducible case on 1.13

Powiązane problemy