File not found even after adding the file inside docker












0















I have written a docker file which adds my python script inside the container:
ADD test_pclean.py /test_pclean.py



My directory structure is:



.
├── Dockerfile
├── README.md
├── pipeline.json
└── test_pclean.py


My json file which acts as a configuration file for creating a pipeline in Pachyderm is as follows:



{
"pipeline": {
"name": "mopng-beneficiary-v2"
},
"transform": {
"cmd": ["python3", "/test_pclean.py"],
"image": "avisrivastava254084/mopng-beneficiary-v2-image-7"
},
"input": {
"atom": {
"repo": "mopng_beneficiary_v2",
"glob": "/*"
}
}
}


Even though I have copied the official documentation's example, I am facing an error:
python3: can't open file '/test_pclean.py': [Errno 2] No such file or directory



My dockerfile is:



FROM    debian:stretch

# Install opencv and matplotlib.
RUN apt-get update
&& apt-get upgrade -y
&& apt-get install -y unzip wget build-essential
cmake git pkg-config libswscale-dev
&& apt-get clean
&& rm -rf /var/lib/apt

RUN apt update
RUN apt-get -y install python3-pip
RUN pip3 install matplotlib
RUN pip3 install pandas

ADD test_pclean.py /test_pclean.py
ENTRYPOINT [ "/bin/bash/" ]









share|improve this question




















  • 1





    What's in dockerfile ?

    – Setop
    Dec 31 '18 at 23:51






  • 1





    If you're trying to put files in a docker image, it's usually best to do COPY <file> /

    – C.Nivs
    Dec 31 '18 at 23:55











  • @aviral C.Nivs is right, you should do: COPY test_pclean.py .

    – YOLO
    Jan 1 at 12:13











  • Can you add Dockerfile content to the question?

    – coolinuxoid
    Jan 2 at 9:55











  • @coolinuxoid Done!

    – aviral sanjay
    Jan 2 at 10:04
















0















I have written a docker file which adds my python script inside the container:
ADD test_pclean.py /test_pclean.py



My directory structure is:



.
├── Dockerfile
├── README.md
├── pipeline.json
└── test_pclean.py


My json file which acts as a configuration file for creating a pipeline in Pachyderm is as follows:



{
"pipeline": {
"name": "mopng-beneficiary-v2"
},
"transform": {
"cmd": ["python3", "/test_pclean.py"],
"image": "avisrivastava254084/mopng-beneficiary-v2-image-7"
},
"input": {
"atom": {
"repo": "mopng_beneficiary_v2",
"glob": "/*"
}
}
}


Even though I have copied the official documentation's example, I am facing an error:
python3: can't open file '/test_pclean.py': [Errno 2] No such file or directory



My dockerfile is:



FROM    debian:stretch

# Install opencv and matplotlib.
RUN apt-get update
&& apt-get upgrade -y
&& apt-get install -y unzip wget build-essential
cmake git pkg-config libswscale-dev
&& apt-get clean
&& rm -rf /var/lib/apt

RUN apt update
RUN apt-get -y install python3-pip
RUN pip3 install matplotlib
RUN pip3 install pandas

ADD test_pclean.py /test_pclean.py
ENTRYPOINT [ "/bin/bash/" ]









share|improve this question




















  • 1





    What's in dockerfile ?

    – Setop
    Dec 31 '18 at 23:51






  • 1





    If you're trying to put files in a docker image, it's usually best to do COPY <file> /

    – C.Nivs
    Dec 31 '18 at 23:55











  • @aviral C.Nivs is right, you should do: COPY test_pclean.py .

    – YOLO
    Jan 1 at 12:13











  • Can you add Dockerfile content to the question?

    – coolinuxoid
    Jan 2 at 9:55











  • @coolinuxoid Done!

    – aviral sanjay
    Jan 2 at 10:04














0












0








0








I have written a docker file which adds my python script inside the container:
ADD test_pclean.py /test_pclean.py



My directory structure is:



.
├── Dockerfile
├── README.md
├── pipeline.json
└── test_pclean.py


My json file which acts as a configuration file for creating a pipeline in Pachyderm is as follows:



{
"pipeline": {
"name": "mopng-beneficiary-v2"
},
"transform": {
"cmd": ["python3", "/test_pclean.py"],
"image": "avisrivastava254084/mopng-beneficiary-v2-image-7"
},
"input": {
"atom": {
"repo": "mopng_beneficiary_v2",
"glob": "/*"
}
}
}


Even though I have copied the official documentation's example, I am facing an error:
python3: can't open file '/test_pclean.py': [Errno 2] No such file or directory



My dockerfile is:



FROM    debian:stretch

# Install opencv and matplotlib.
RUN apt-get update
&& apt-get upgrade -y
&& apt-get install -y unzip wget build-essential
cmake git pkg-config libswscale-dev
&& apt-get clean
&& rm -rf /var/lib/apt

RUN apt update
RUN apt-get -y install python3-pip
RUN pip3 install matplotlib
RUN pip3 install pandas

ADD test_pclean.py /test_pclean.py
ENTRYPOINT [ "/bin/bash/" ]









share|improve this question
















I have written a docker file which adds my python script inside the container:
ADD test_pclean.py /test_pclean.py



My directory structure is:



.
├── Dockerfile
├── README.md
├── pipeline.json
└── test_pclean.py


My json file which acts as a configuration file for creating a pipeline in Pachyderm is as follows:



{
"pipeline": {
"name": "mopng-beneficiary-v2"
},
"transform": {
"cmd": ["python3", "/test_pclean.py"],
"image": "avisrivastava254084/mopng-beneficiary-v2-image-7"
},
"input": {
"atom": {
"repo": "mopng_beneficiary_v2",
"glob": "/*"
}
}
}


Even though I have copied the official documentation's example, I am facing an error:
python3: can't open file '/test_pclean.py': [Errno 2] No such file or directory



My dockerfile is:



FROM    debian:stretch

# Install opencv and matplotlib.
RUN apt-get update
&& apt-get upgrade -y
&& apt-get install -y unzip wget build-essential
cmake git pkg-config libswscale-dev
&& apt-get clean
&& rm -rf /var/lib/apt

RUN apt update
RUN apt-get -y install python3-pip
RUN pip3 install matplotlib
RUN pip3 install pandas

ADD test_pclean.py /test_pclean.py
ENTRYPOINT [ "/bin/bash/" ]






python python-3.x docker pachyderm






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Jan 2 at 10:06







aviral sanjay

















asked Dec 31 '18 at 22:48









aviral sanjayaviral sanjay

28712




28712








  • 1





    What's in dockerfile ?

    – Setop
    Dec 31 '18 at 23:51






  • 1





    If you're trying to put files in a docker image, it's usually best to do COPY <file> /

    – C.Nivs
    Dec 31 '18 at 23:55











  • @aviral C.Nivs is right, you should do: COPY test_pclean.py .

    – YOLO
    Jan 1 at 12:13











  • Can you add Dockerfile content to the question?

    – coolinuxoid
    Jan 2 at 9:55











  • @coolinuxoid Done!

    – aviral sanjay
    Jan 2 at 10:04














  • 1





    What's in dockerfile ?

    – Setop
    Dec 31 '18 at 23:51






  • 1





    If you're trying to put files in a docker image, it's usually best to do COPY <file> /

    – C.Nivs
    Dec 31 '18 at 23:55











  • @aviral C.Nivs is right, you should do: COPY test_pclean.py .

    – YOLO
    Jan 1 at 12:13











  • Can you add Dockerfile content to the question?

    – coolinuxoid
    Jan 2 at 9:55











  • @coolinuxoid Done!

    – aviral sanjay
    Jan 2 at 10:04








1




1





What's in dockerfile ?

– Setop
Dec 31 '18 at 23:51





What's in dockerfile ?

– Setop
Dec 31 '18 at 23:51




1




1





If you're trying to put files in a docker image, it's usually best to do COPY <file> /

– C.Nivs
Dec 31 '18 at 23:55





If you're trying to put files in a docker image, it's usually best to do COPY <file> /

– C.Nivs
Dec 31 '18 at 23:55













@aviral C.Nivs is right, you should do: COPY test_pclean.py .

– YOLO
Jan 1 at 12:13





@aviral C.Nivs is right, you should do: COPY test_pclean.py .

– YOLO
Jan 1 at 12:13













Can you add Dockerfile content to the question?

– coolinuxoid
Jan 2 at 9:55





Can you add Dockerfile content to the question?

– coolinuxoid
Jan 2 at 9:55













@coolinuxoid Done!

– aviral sanjay
Jan 2 at 10:04





@coolinuxoid Done!

– aviral sanjay
Jan 2 at 10:04












2 Answers
2






active

oldest

votes


















1














Like some of the comments above suggest. It looks like your test_pclean.py file isn't in the docker image. Here's what should fix it.




  1. Make sure your test_pclean.py file is in your docker image by having be included as part of the build process. Put this as the last step in your dockerfile:


COPY test_pclean.py .




  1. Ensure that your pachyderm pipeline spec has the following for the cmd portion:
    "cmd": ["python3", "./test_pclean.py"]


  2. And this is more of a suggestion than a requirement.... You'll make life easier for yourself if you use image tags as part of your docker build. If you default to latest tag, any future iterations/builds of this step in your pipeline could have negitave affects (new bugs in your code etc.). Therefore the best practice is to use a particular version in your pipeline: mopng-beneficiary-v2-image-7:v1 and mopng-beneficiary-v2-image-7:v2 and so on. That way you can iterate on say version 3 and it won't affect the already running pipeline.



docker build -t avisrivastava254084/mopng-beneficiary-v2-image-7:v1



Then just update your pipeline spec to use avisrivastava254084/mopng-beneficiary-v2-image-7:v1






share|improve this answer































    -1














    I was not changing the commits to my docker images on each build and hence, Kubernetes was using the local docker file that it had(w/o tags and commits, it doesn't acknowledge any change). Once I started using commit with each build, Kubernetes started downloading the intended docker image.






    share|improve this answer























      Your Answer






      StackExchange.ifUsing("editor", function () {
      StackExchange.using("externalEditor", function () {
      StackExchange.using("snippets", function () {
      StackExchange.snippets.init();
      });
      });
      }, "code-snippets");

      StackExchange.ready(function() {
      var channelOptions = {
      tags: "".split(" "),
      id: "1"
      };
      initTagRenderer("".split(" "), "".split(" "), channelOptions);

      StackExchange.using("externalEditor", function() {
      // Have to fire editor after snippets, if snippets enabled
      if (StackExchange.settings.snippets.snippetsEnabled) {
      StackExchange.using("snippets", function() {
      createEditor();
      });
      }
      else {
      createEditor();
      }
      });

      function createEditor() {
      StackExchange.prepareEditor({
      heartbeatType: 'answer',
      autoActivateHeartbeat: false,
      convertImagesToLinks: true,
      noModals: true,
      showLowRepImageUploadWarning: true,
      reputationToPostImages: 10,
      bindNavPrevention: true,
      postfix: "",
      imageUploader: {
      brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
      contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
      allowUrls: true
      },
      onDemand: true,
      discardSelector: ".discard-answer"
      ,immediatelyShowMarkdownHelp:true
      });


      }
      });














      draft saved

      draft discarded


















      StackExchange.ready(
      function () {
      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53991961%2ffile-not-found-even-after-adding-the-file-inside-docker%23new-answer', 'question_page');
      }
      );

      Post as a guest















      Required, but never shown

























      2 Answers
      2






      active

      oldest

      votes








      2 Answers
      2






      active

      oldest

      votes









      active

      oldest

      votes






      active

      oldest

      votes









      1














      Like some of the comments above suggest. It looks like your test_pclean.py file isn't in the docker image. Here's what should fix it.




      1. Make sure your test_pclean.py file is in your docker image by having be included as part of the build process. Put this as the last step in your dockerfile:


      COPY test_pclean.py .




      1. Ensure that your pachyderm pipeline spec has the following for the cmd portion:
        "cmd": ["python3", "./test_pclean.py"]


      2. And this is more of a suggestion than a requirement.... You'll make life easier for yourself if you use image tags as part of your docker build. If you default to latest tag, any future iterations/builds of this step in your pipeline could have negitave affects (new bugs in your code etc.). Therefore the best practice is to use a particular version in your pipeline: mopng-beneficiary-v2-image-7:v1 and mopng-beneficiary-v2-image-7:v2 and so on. That way you can iterate on say version 3 and it won't affect the already running pipeline.



      docker build -t avisrivastava254084/mopng-beneficiary-v2-image-7:v1



      Then just update your pipeline spec to use avisrivastava254084/mopng-beneficiary-v2-image-7:v1






      share|improve this answer




























        1














        Like some of the comments above suggest. It looks like your test_pclean.py file isn't in the docker image. Here's what should fix it.




        1. Make sure your test_pclean.py file is in your docker image by having be included as part of the build process. Put this as the last step in your dockerfile:


        COPY test_pclean.py .




        1. Ensure that your pachyderm pipeline spec has the following for the cmd portion:
          "cmd": ["python3", "./test_pclean.py"]


        2. And this is more of a suggestion than a requirement.... You'll make life easier for yourself if you use image tags as part of your docker build. If you default to latest tag, any future iterations/builds of this step in your pipeline could have negitave affects (new bugs in your code etc.). Therefore the best practice is to use a particular version in your pipeline: mopng-beneficiary-v2-image-7:v1 and mopng-beneficiary-v2-image-7:v2 and so on. That way you can iterate on say version 3 and it won't affect the already running pipeline.



        docker build -t avisrivastava254084/mopng-beneficiary-v2-image-7:v1



        Then just update your pipeline spec to use avisrivastava254084/mopng-beneficiary-v2-image-7:v1






        share|improve this answer


























          1












          1








          1







          Like some of the comments above suggest. It looks like your test_pclean.py file isn't in the docker image. Here's what should fix it.




          1. Make sure your test_pclean.py file is in your docker image by having be included as part of the build process. Put this as the last step in your dockerfile:


          COPY test_pclean.py .




          1. Ensure that your pachyderm pipeline spec has the following for the cmd portion:
            "cmd": ["python3", "./test_pclean.py"]


          2. And this is more of a suggestion than a requirement.... You'll make life easier for yourself if you use image tags as part of your docker build. If you default to latest tag, any future iterations/builds of this step in your pipeline could have negitave affects (new bugs in your code etc.). Therefore the best practice is to use a particular version in your pipeline: mopng-beneficiary-v2-image-7:v1 and mopng-beneficiary-v2-image-7:v2 and so on. That way you can iterate on say version 3 and it won't affect the already running pipeline.



          docker build -t avisrivastava254084/mopng-beneficiary-v2-image-7:v1



          Then just update your pipeline spec to use avisrivastava254084/mopng-beneficiary-v2-image-7:v1






          share|improve this answer













          Like some of the comments above suggest. It looks like your test_pclean.py file isn't in the docker image. Here's what should fix it.




          1. Make sure your test_pclean.py file is in your docker image by having be included as part of the build process. Put this as the last step in your dockerfile:


          COPY test_pclean.py .




          1. Ensure that your pachyderm pipeline spec has the following for the cmd portion:
            "cmd": ["python3", "./test_pclean.py"]


          2. And this is more of a suggestion than a requirement.... You'll make life easier for yourself if you use image tags as part of your docker build. If you default to latest tag, any future iterations/builds of this step in your pipeline could have negitave affects (new bugs in your code etc.). Therefore the best practice is to use a particular version in your pipeline: mopng-beneficiary-v2-image-7:v1 and mopng-beneficiary-v2-image-7:v2 and so on. That way you can iterate on say version 3 and it won't affect the already running pipeline.



          docker build -t avisrivastava254084/mopng-beneficiary-v2-image-7:v1



          Then just update your pipeline spec to use avisrivastava254084/mopng-beneficiary-v2-image-7:v1







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Jan 3 at 18:24









          niharveyniharvey

          2,66811023




          2,66811023

























              -1














              I was not changing the commits to my docker images on each build and hence, Kubernetes was using the local docker file that it had(w/o tags and commits, it doesn't acknowledge any change). Once I started using commit with each build, Kubernetes started downloading the intended docker image.






              share|improve this answer




























                -1














                I was not changing the commits to my docker images on each build and hence, Kubernetes was using the local docker file that it had(w/o tags and commits, it doesn't acknowledge any change). Once I started using commit with each build, Kubernetes started downloading the intended docker image.






                share|improve this answer


























                  -1












                  -1








                  -1







                  I was not changing the commits to my docker images on each build and hence, Kubernetes was using the local docker file that it had(w/o tags and commits, it doesn't acknowledge any change). Once I started using commit with each build, Kubernetes started downloading the intended docker image.






                  share|improve this answer













                  I was not changing the commits to my docker images on each build and hence, Kubernetes was using the local docker file that it had(w/o tags and commits, it doesn't acknowledge any change). Once I started using commit with each build, Kubernetes started downloading the intended docker image.







                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered Jan 17 at 10:20









                  aviral sanjayaviral sanjay

                  28712




                  28712






























                      draft saved

                      draft discarded




















































                      Thanks for contributing an answer to Stack Overflow!


                      • Please be sure to answer the question. Provide details and share your research!

                      But avoid



                      • Asking for help, clarification, or responding to other answers.

                      • Making statements based on opinion; back them up with references or personal experience.


                      To learn more, see our tips on writing great answers.




                      draft saved


                      draft discarded














                      StackExchange.ready(
                      function () {
                      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53991961%2ffile-not-found-even-after-adding-the-file-inside-docker%23new-answer', 'question_page');
                      }
                      );

                      Post as a guest















                      Required, but never shown





















































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown

































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown







                      Popular posts from this blog

                      Mossoró

                      Error while reading .h5 file using the rhdf5 package in R

                      Pushsharp Apns notification error: 'InvalidToken'