I have a Dockerfile set up in my root (~) folder. The first three lines of my file look like this:
COPY file1 /root/folder/
COPY file2 /root/folder/
COPY file3 /root/folder/
but it returns the following error for each line:
No such file or directory
The files are in the same directory as my Dockerfile and I am running the command docker build - < Dockerfile
in the same directory in terminal as well.
What am I doing wrong here exactly?
Docker Dockerfiles COPY InstructionThe COPY instruction copies new files or directories from <src> and adds them to the filesystem of the container at the path <dest> . Multiple <src> resource may be specified but they must be relative to the source directory that is being built (the context of the build).
COPY and ADD are both Dockerfile instructions that serve similar purposes. They let you copy files from a specific location into a Docker image. COPY takes in a src and destination. It only lets you copy in a local or directory from your host (the machine-building the Docker image) into the Docker image itself.
Do check the .dockerignore
file too.
I know this is a very rare case, but I had that file mentioned there.
It is possibly caused by you are referring file1
/file2
/file3
as an absolute path which is not in build context, Docker only searches the path in the build context.
E.g. if you use COPY /home/yourname/file1
, Docker build interprets it as ${docker build working directory}/home/yourname/file1
, if no file with the same name here, no file or directory error is thrown.
Refer to One of the docker issue
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With