Docker exec and docker run giving me different resolv.conf hosts












1














I using docker compose to fire up two containers 1. flask webapp 2. mysql database. I have all my scripts written up and Dockerfile all ready to go and working. My app does a ping to other machines by hostnames and requires the resolv.conf to be the same as the host computer. After I fire up my docker-compose I can see both my containers running like this :



#:~/home/user # docker-compose images
/bin/sh: /tmp/_MEIXmPrg9/libreadline.so.7: no version information available (required by /bin/sh)
/bin/sh: /tmp/_MEIXmPrg9/libreadline.so.7: no version information available (required by /bin/sh)
Container Repository Tag Image Id Size
---------------------------------------------------------------------------
webapp-gui_app_1_1b87619cd08b webapp-gui_app latest f0982b82c556 467 MB
webapp-gui_db_1_bd74de835067 mysql 5.7 702fb0b7837f 355 MB


On my webapp, the ping command is not allowing me to ping by hostname, so when I try to run interactive mode to troubleshoot I noticed that when running with:



docker run -it webapp-gui_app_1_1b87619cd08b /bin/sh 


This gives the correct resolv.conf and I am able to successfully ping the hostnames, however, when I run it like this



docker exec -u 0 -it webapp-gui_app_1_1b87619cd08b sh


My resolv.conf file changes to the following (incorrect resolv.conf), and I am not able to ping other local machines by hostname anymore. Does anyone know why?



/etc # cat resolv.conf
search mydomain.com
nameserver 127.0.0.11
options ndots:0









share|improve this question



























    1














    I using docker compose to fire up two containers 1. flask webapp 2. mysql database. I have all my scripts written up and Dockerfile all ready to go and working. My app does a ping to other machines by hostnames and requires the resolv.conf to be the same as the host computer. After I fire up my docker-compose I can see both my containers running like this :



    #:~/home/user # docker-compose images
    /bin/sh: /tmp/_MEIXmPrg9/libreadline.so.7: no version information available (required by /bin/sh)
    /bin/sh: /tmp/_MEIXmPrg9/libreadline.so.7: no version information available (required by /bin/sh)
    Container Repository Tag Image Id Size
    ---------------------------------------------------------------------------
    webapp-gui_app_1_1b87619cd08b webapp-gui_app latest f0982b82c556 467 MB
    webapp-gui_db_1_bd74de835067 mysql 5.7 702fb0b7837f 355 MB


    On my webapp, the ping command is not allowing me to ping by hostname, so when I try to run interactive mode to troubleshoot I noticed that when running with:



    docker run -it webapp-gui_app_1_1b87619cd08b /bin/sh 


    This gives the correct resolv.conf and I am able to successfully ping the hostnames, however, when I run it like this



    docker exec -u 0 -it webapp-gui_app_1_1b87619cd08b sh


    My resolv.conf file changes to the following (incorrect resolv.conf), and I am not able to ping other local machines by hostname anymore. Does anyone know why?



    /etc # cat resolv.conf
    search mydomain.com
    nameserver 127.0.0.11
    options ndots:0









    share|improve this question

























      1












      1








      1







      I using docker compose to fire up two containers 1. flask webapp 2. mysql database. I have all my scripts written up and Dockerfile all ready to go and working. My app does a ping to other machines by hostnames and requires the resolv.conf to be the same as the host computer. After I fire up my docker-compose I can see both my containers running like this :



      #:~/home/user # docker-compose images
      /bin/sh: /tmp/_MEIXmPrg9/libreadline.so.7: no version information available (required by /bin/sh)
      /bin/sh: /tmp/_MEIXmPrg9/libreadline.so.7: no version information available (required by /bin/sh)
      Container Repository Tag Image Id Size
      ---------------------------------------------------------------------------
      webapp-gui_app_1_1b87619cd08b webapp-gui_app latest f0982b82c556 467 MB
      webapp-gui_db_1_bd74de835067 mysql 5.7 702fb0b7837f 355 MB


      On my webapp, the ping command is not allowing me to ping by hostname, so when I try to run interactive mode to troubleshoot I noticed that when running with:



      docker run -it webapp-gui_app_1_1b87619cd08b /bin/sh 


      This gives the correct resolv.conf and I am able to successfully ping the hostnames, however, when I run it like this



      docker exec -u 0 -it webapp-gui_app_1_1b87619cd08b sh


      My resolv.conf file changes to the following (incorrect resolv.conf), and I am not able to ping other local machines by hostname anymore. Does anyone know why?



      /etc # cat resolv.conf
      search mydomain.com
      nameserver 127.0.0.11
      options ndots:0









      share|improve this question













      I using docker compose to fire up two containers 1. flask webapp 2. mysql database. I have all my scripts written up and Dockerfile all ready to go and working. My app does a ping to other machines by hostnames and requires the resolv.conf to be the same as the host computer. After I fire up my docker-compose I can see both my containers running like this :



      #:~/home/user # docker-compose images
      /bin/sh: /tmp/_MEIXmPrg9/libreadline.so.7: no version information available (required by /bin/sh)
      /bin/sh: /tmp/_MEIXmPrg9/libreadline.so.7: no version information available (required by /bin/sh)
      Container Repository Tag Image Id Size
      ---------------------------------------------------------------------------
      webapp-gui_app_1_1b87619cd08b webapp-gui_app latest f0982b82c556 467 MB
      webapp-gui_db_1_bd74de835067 mysql 5.7 702fb0b7837f 355 MB


      On my webapp, the ping command is not allowing me to ping by hostname, so when I try to run interactive mode to troubleshoot I noticed that when running with:



      docker run -it webapp-gui_app_1_1b87619cd08b /bin/sh 


      This gives the correct resolv.conf and I am able to successfully ping the hostnames, however, when I run it like this



      docker exec -u 0 -it webapp-gui_app_1_1b87619cd08b sh


      My resolv.conf file changes to the following (incorrect resolv.conf), and I am not able to ping other local machines by hostname anymore. Does anyone know why?



      /etc # cat resolv.conf
      search mydomain.com
      nameserver 127.0.0.11
      options ndots:0






      docker docker-compose hostname






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Nov 21 '18 at 0:04









      honeybadger_execute

      1098




      1098
























          0






          active

          oldest

          votes











          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%2f53403461%2fdocker-exec-and-docker-run-giving-me-different-resolv-conf-hosts%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          0






          active

          oldest

          votes








          0






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes
















          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.





          Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


          Please pay close attention to the following guidance:


          • 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%2f53403461%2fdocker-exec-and-docker-run-giving-me-different-resolv-conf-hosts%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

          Costa Masnaga

          Fotorealismo

          Sidney Franklin