Search code examples
dockercopydockerfile

Copy multiple directories with one command


Is there any way to copy multiple directories in one command, to reduce the number of layers? E.g., instead of:

COPY dirone ./dirone
COPY dirtwo ./dirtwo
COPY dirthree ./dirthree

I want to do:

COPY dirone/ dirtwo/ dirthree/ ./

However, this copies the contents of the directories... but I want to copy the directories themselves.


Solution

  • That's the documented behavior of the copy command:

    If <src> is a directory, the entire contents of the directory are copied, including filesystem metadata.

    Note: The directory itself is not copied, just its contents.

    Best workaround I can suggest is to change your directory layout in your build folder, move the three folders under one parent folder and add the parent.