How to copy file in Docker?

Related searches

I have the following Dockerfile:

FROM sonarqube

RUN wget https://github.com/gabrie-allaigre/sonar-gitlab-plugin/releases/download/4.0.0/sonar-gitlab-plugin-4.0.0.jar
COPY sonar-gitlab-plugin-4.0.0.jar /opt/sonarqube/extensions/plugins/

And I get the following error while copying the file:

Removing intermediate container 63a3ae1d7390
Step 3/3 : COPY sonar-gitlab-plugin-4.0.0.jar /opt/sonarqube/extensions/plugins/
lstat sonar-gitlab-plugin-4.0.0.jar: no such file or directory

How can I copy the file in this case?

You are trying to copy a file located in your container as if it was a local file, so Docker is unable to find it.

Use ADD like this should make it work :

FROM sonarqube

ADD https://github.com/gabrie-allaigre/sonar-gitlab-plugin/releases/download/4.0.0/sonar-gitlab-plugin-4.0.0.jar /opt/sonarqube/extensions/plugins/

it's more "dockerlike"

docker cp, The cp command can be used to copy files. One specific file can be copied TO the container like: docker cp foo.txt mycontainer:/foo.txt. Copying Files To And From Docker Containers 1. Introduction. As more of our applications are deployed to cloud environments, working with Docker is becoming a 2. Docker cp Command. The quickest way to copy files to and from a Docker container is to use the docker cp command. 3. Volume

You're running wget inside the container, but then trying to COPY it from the host machine to the container. To copy from one container location to another simply use cp:

RUN wget https://github.com/gabrie-allaigre/sonar-gitlab-plugin/releases/download/4.0.0/sonar-gitlab-plugin-4.0.0.jar \
 && cp sonar-gitlab-plugin-4.0.0.jar /opt/sonarqube/extensions/plugins/

Better yet, just use wget -O to save the file in the desired location from the get go.

RUN wget -o /opt/sonarqube/extensions/plugins/ \
        https://github.com/gabrie-allaigre/sonar-gitlab-plugin/releases/download/4.0.0/sonar-gitlab-plugin-4.0.0.jar 

Copying files from host to Docker container, The quickest way to copy files to and from a Docker container is to use the docker cp command. This command closely mimics the Unix cp� If you want to copy files from your host system to the container, you should use docker cp command like this: docker cp host_source_path container:destination_path If you want to copy files from the container to the host system, use this command:

COPY command copies file from the host to the container. For any command you want to run inside the container you need RUN:

RUN wget https://github.com/gabrie-allaigre/sonar-gitlab-plugin/releases/download/4.0.0/sonar-gitlab-plugin-4.0.0.jar \
   && cp sonar-gitlab-plugin-4.0.0.jar /opt/sonarqube/extensions/plugins/

Copying Files To And From Docker Containers, The docker cp utility copies the contents of SRC_PATH to the DEST_PATH . You can copy from the container's file system to the local machine� Create a new directory called docker-htmltopdf $ mkidr docker-htmltopdf. Go into the directory you created: $ cd docker-htmltopdf. Create a docker file: $ touch Dockerfile. Add the following to the docker file:

Copy file from host machine to docker container, docker cp <container>:<source path> <destination path> The docker cp command utility copies the contents of <source path> to the <destination path>. You can copy the files from local host machine to the docker container and vice versa. Note, the docker cp command assumes that docker container paths are relative to it’s root directory “/”.

Docker: Cp Command – Copy File ( To | From ) Container. The docker cp command serves for copying files and folders between Docker container and a host machine. It is possible to copy a file or folder from host to container as well as from container to host. In the examples below i am coping the files but the syntax for copying folders is the same.

The <src> path must be inside the context of the build; you cannot COPY../something /something, because the first step of a docker build is to send the context directory (and subdirectories) to the docker daemon. If <src> is a directory, the entire contents of the directory are copied, including filesystem metadata.

Comments
  • Same error when I replace with ADD.