2014-11-06 14 views
10

Ich versuche, ein Muster in einem .dockerignore zu negieren. Das Globbing wird mit Go's Dateipfadregeln durchgeführt. Nach der Überprüfung der source, scheint es, wir können ein Muster negieren, indem Sie^Zeichen verwenden.gibt es eine Möglichkeit, ein Muster in .dockerignore zu negieren?

.dockerfile

* 
^Dockerfile 
^web-app/dist 

Allerdings, wenn ich bauen Dockarbeiter, habe ich die folgende Fehlermeldung:

Dockerfile was excluded by .dockerignore pattern '*' 

Wissen Sie, wenn ihr möglich zu erreichen, was ich will?

Dank

+1

möglich duplicate von [Ausnahmen in .dockerignore] (http://stackoverflow.com/questions/26636566/exceptions-in-dockerignore) – Andy

+0

das '*' passt alles zusammen, was die anderen Muster irrelevant macht. Ich versuche auch einen Weg zu finden, eine Zeichenkette zu negieren, von den Dokumenten sieht es aus wie '^' nur für Zeichenbereiche, zB '[^ _] *' um alles zu finden, was nicht mit einem '_' beginnt – Anentropic

+1

kein Duplikat, meiner Meinung nach – Anentropic

Antwort

10

Ab Version 1.7.0 ist dies nun möglich.

Negieren mit ! funktioniert jetzt so, wie Sie es erwarten und ist im offiziellen Dockerfile reference dokumentiert.

Hier ist ein Beispiel aus dem obigen Link genommen:

*/temp* 
*/*/temp* 
temp? 
*.md 
!LICENSE.md 

Die Linie !LICENSE.md verursacht LICENSE.md einbezogen wird in dem Docker Kontext trotz der Regel *.md bauen.

Verwandte Themen