I have written a Dockerfile which looks like this
FROM ubuntu:12.04
RUN apt-get update
RUN apt-get install -y wget
Now I\'m having a file
If you want to copy the current dir's contents, you can run:
docker build -t <imagename:tag> -f- ./ < Dockerfile
you can use either the ADD command https://docs.docker.com/engine/reference/builder/#/add or the COPY command https://docs.docker.com/engine/reference/builder/#/copy
I got the following error using Docker 19.03.8 on CentOS 7:
COPY failed: stat /var/lib/docker/tmp/docker-builderXXXXXXX/abc.txt: no such file or directory
The solution for me was to build from Docker file with docker build . instead of docker build - < Dockerfile.
I was able to copy a file from my host to the container within a dockerfile as such:
The contents of the docker file as follows,to copy a file from local host to the root of the container: FROM ubuntu:16.04
COPY test.txt /
You should see the file.
For those who get this (terribly unclear) error:
COPY failed: stat /var/lib/docker/tmp/docker-builderXXXXXXX/abc.txt: no such file or directory
There could be loads of reasons, including:
context overwrites the context of the Dockerfile. Your COPY statements now need to navigate a path relative to what is defined in docker-compose.yml instead of relative to your Dockerfile.COPY abc.txt /app #This won't work.dockerignore or .gitignore files (be wary of wildcards)Sometimes WORKDIR /abc followed by COPY . xyz/ works where COPY /abc xyz/ fails, but it's a bit ugly.
Use COPY command like this:
COPY foo.txt /data/foo.txt
# where foo.txt is the relative path on host
# and /data/foo.txt is the absolute path in the image
read more details for COPY in the official documentation
An alternative would be to use ADD but this is not the best practise if you dont want to use some advanced features of ADD like decompression of tar.gz files.If you still want to use ADD command, do it like this:
ADD abc.txt /data/abc.txt
# where abc.txt is the relative path on host
# and /data/abc.txt is the absolute path in the image
read more details for ADD in the official documentation