Unable to access external URLs from within Docker Container










0















I'm trying to access an external URL from within my Docker Container running on an AWS EC2 Instance.



Though I'm able to CURL from the EC2 Instance - the same CURL doesn't work from within the Docker container.
Essentially this CURL works in the EC2 Instance but NOT within the Docker Container. Why would that be?




curl https://elasticsearch.myorg.com




Dockerfile:



FROM docker.elastic.co/kibana/kibana:6.5.0
ENV ELASTICSEARCH_URL=https://elasticsearch.myorg.com
EXPOSE 5601
CMD ["/usr/local/bin/kibana-docker"]









share|improve this question






















  • Is that url supposed to be a real example or just a placeholder?

    – George Appleton
    Nov 14 '18 at 17:01












  • The url is a placeholder. Since it points to a Rout53 elastic endpoint within my Organization - didnt see the point of mentioning the actual endpoint. The point here is, i can curl that elasticsearch endpoint from within the EC2. But from within the docker container - it times out

    – Dorian McAllister
    Nov 14 '18 at 17:04











  • Have you tried attaching to the docker container and pinging the endpoint from there?

    – George Appleton
    Nov 14 '18 at 17:06











  • Sorry could u clarify this a bit more ? "have you tried attaching to the docker container"? Attach what specifically? If you mean If ive tried running the docker contain in interactive mode and logging in and pinging the endpoint from there.thats how i figured out the curl isnt working from the container

    – Dorian McAllister
    Nov 14 '18 at 17:37












  • What's the response message from trying that?

    – George Appleton
    Nov 14 '18 at 18:31















0















I'm trying to access an external URL from within my Docker Container running on an AWS EC2 Instance.



Though I'm able to CURL from the EC2 Instance - the same CURL doesn't work from within the Docker container.
Essentially this CURL works in the EC2 Instance but NOT within the Docker Container. Why would that be?




curl https://elasticsearch.myorg.com




Dockerfile:



FROM docker.elastic.co/kibana/kibana:6.5.0
ENV ELASTICSEARCH_URL=https://elasticsearch.myorg.com
EXPOSE 5601
CMD ["/usr/local/bin/kibana-docker"]









share|improve this question






















  • Is that url supposed to be a real example or just a placeholder?

    – George Appleton
    Nov 14 '18 at 17:01












  • The url is a placeholder. Since it points to a Rout53 elastic endpoint within my Organization - didnt see the point of mentioning the actual endpoint. The point here is, i can curl that elasticsearch endpoint from within the EC2. But from within the docker container - it times out

    – Dorian McAllister
    Nov 14 '18 at 17:04











  • Have you tried attaching to the docker container and pinging the endpoint from there?

    – George Appleton
    Nov 14 '18 at 17:06











  • Sorry could u clarify this a bit more ? "have you tried attaching to the docker container"? Attach what specifically? If you mean If ive tried running the docker contain in interactive mode and logging in and pinging the endpoint from there.thats how i figured out the curl isnt working from the container

    – Dorian McAllister
    Nov 14 '18 at 17:37












  • What's the response message from trying that?

    – George Appleton
    Nov 14 '18 at 18:31













0












0








0








I'm trying to access an external URL from within my Docker Container running on an AWS EC2 Instance.



Though I'm able to CURL from the EC2 Instance - the same CURL doesn't work from within the Docker container.
Essentially this CURL works in the EC2 Instance but NOT within the Docker Container. Why would that be?




curl https://elasticsearch.myorg.com




Dockerfile:



FROM docker.elastic.co/kibana/kibana:6.5.0
ENV ELASTICSEARCH_URL=https://elasticsearch.myorg.com
EXPOSE 5601
CMD ["/usr/local/bin/kibana-docker"]









share|improve this question














I'm trying to access an external URL from within my Docker Container running on an AWS EC2 Instance.



Though I'm able to CURL from the EC2 Instance - the same CURL doesn't work from within the Docker container.
Essentially this CURL works in the EC2 Instance but NOT within the Docker Container. Why would that be?




curl https://elasticsearch.myorg.com




Dockerfile:



FROM docker.elastic.co/kibana/kibana:6.5.0
ENV ELASTICSEARCH_URL=https://elasticsearch.myorg.com
EXPOSE 5601
CMD ["/usr/local/bin/kibana-docker"]






docker amazon-ec2






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Nov 14 '18 at 16:52









Dorian McAllisterDorian McAllister

548




548












  • Is that url supposed to be a real example or just a placeholder?

    – George Appleton
    Nov 14 '18 at 17:01












  • The url is a placeholder. Since it points to a Rout53 elastic endpoint within my Organization - didnt see the point of mentioning the actual endpoint. The point here is, i can curl that elasticsearch endpoint from within the EC2. But from within the docker container - it times out

    – Dorian McAllister
    Nov 14 '18 at 17:04











  • Have you tried attaching to the docker container and pinging the endpoint from there?

    – George Appleton
    Nov 14 '18 at 17:06











  • Sorry could u clarify this a bit more ? "have you tried attaching to the docker container"? Attach what specifically? If you mean If ive tried running the docker contain in interactive mode and logging in and pinging the endpoint from there.thats how i figured out the curl isnt working from the container

    – Dorian McAllister
    Nov 14 '18 at 17:37












  • What's the response message from trying that?

    – George Appleton
    Nov 14 '18 at 18:31

















  • Is that url supposed to be a real example or just a placeholder?

    – George Appleton
    Nov 14 '18 at 17:01












  • The url is a placeholder. Since it points to a Rout53 elastic endpoint within my Organization - didnt see the point of mentioning the actual endpoint. The point here is, i can curl that elasticsearch endpoint from within the EC2. But from within the docker container - it times out

    – Dorian McAllister
    Nov 14 '18 at 17:04











  • Have you tried attaching to the docker container and pinging the endpoint from there?

    – George Appleton
    Nov 14 '18 at 17:06











  • Sorry could u clarify this a bit more ? "have you tried attaching to the docker container"? Attach what specifically? If you mean If ive tried running the docker contain in interactive mode and logging in and pinging the endpoint from there.thats how i figured out the curl isnt working from the container

    – Dorian McAllister
    Nov 14 '18 at 17:37












  • What's the response message from trying that?

    – George Appleton
    Nov 14 '18 at 18:31
















Is that url supposed to be a real example or just a placeholder?

– George Appleton
Nov 14 '18 at 17:01






Is that url supposed to be a real example or just a placeholder?

– George Appleton
Nov 14 '18 at 17:01














The url is a placeholder. Since it points to a Rout53 elastic endpoint within my Organization - didnt see the point of mentioning the actual endpoint. The point here is, i can curl that elasticsearch endpoint from within the EC2. But from within the docker container - it times out

– Dorian McAllister
Nov 14 '18 at 17:04





The url is a placeholder. Since it points to a Rout53 elastic endpoint within my Organization - didnt see the point of mentioning the actual endpoint. The point here is, i can curl that elasticsearch endpoint from within the EC2. But from within the docker container - it times out

– Dorian McAllister
Nov 14 '18 at 17:04













Have you tried attaching to the docker container and pinging the endpoint from there?

– George Appleton
Nov 14 '18 at 17:06





Have you tried attaching to the docker container and pinging the endpoint from there?

– George Appleton
Nov 14 '18 at 17:06













Sorry could u clarify this a bit more ? "have you tried attaching to the docker container"? Attach what specifically? If you mean If ive tried running the docker contain in interactive mode and logging in and pinging the endpoint from there.thats how i figured out the curl isnt working from the container

– Dorian McAllister
Nov 14 '18 at 17:37






Sorry could u clarify this a bit more ? "have you tried attaching to the docker container"? Attach what specifically? If you mean If ive tried running the docker contain in interactive mode and logging in and pinging the endpoint from there.thats how i figured out the curl isnt working from the container

– Dorian McAllister
Nov 14 '18 at 17:37














What's the response message from trying that?

– George Appleton
Nov 14 '18 at 18:31





What's the response message from trying that?

– George Appleton
Nov 14 '18 at 18:31












1 Answer
1






active

oldest

votes


















0














So after a LOT of trial and error, I finally figured out the problem. It looks like running the docker image using the standard:




docker run -d -p 5601:5601 my-kibana-image:1




doesnt suffice. The host resolution to elasticsearch (which is an external host) ONLY works when I change the network configuration from the default to "host". Doing this




docker run --net=host -d -p 5601:5601 my-kibana-image:1




finally fixed the issue and the kibana container instance was FINALLY able to talk to elasticsearch!!! Kibana bootstrapped correctly and I was able to bring it up fine at this point.






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%2f53305161%2funable-to-access-external-urls-from-within-docker-container%23new-answer', 'question_page');

    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    0














    So after a LOT of trial and error, I finally figured out the problem. It looks like running the docker image using the standard:




    docker run -d -p 5601:5601 my-kibana-image:1




    doesnt suffice. The host resolution to elasticsearch (which is an external host) ONLY works when I change the network configuration from the default to "host". Doing this




    docker run --net=host -d -p 5601:5601 my-kibana-image:1




    finally fixed the issue and the kibana container instance was FINALLY able to talk to elasticsearch!!! Kibana bootstrapped correctly and I was able to bring it up fine at this point.






    share|improve this answer



























      0














      So after a LOT of trial and error, I finally figured out the problem. It looks like running the docker image using the standard:




      docker run -d -p 5601:5601 my-kibana-image:1




      doesnt suffice. The host resolution to elasticsearch (which is an external host) ONLY works when I change the network configuration from the default to "host". Doing this




      docker run --net=host -d -p 5601:5601 my-kibana-image:1




      finally fixed the issue and the kibana container instance was FINALLY able to talk to elasticsearch!!! Kibana bootstrapped correctly and I was able to bring it up fine at this point.






      share|improve this answer

























        0












        0








        0







        So after a LOT of trial and error, I finally figured out the problem. It looks like running the docker image using the standard:




        docker run -d -p 5601:5601 my-kibana-image:1




        doesnt suffice. The host resolution to elasticsearch (which is an external host) ONLY works when I change the network configuration from the default to "host". Doing this




        docker run --net=host -d -p 5601:5601 my-kibana-image:1




        finally fixed the issue and the kibana container instance was FINALLY able to talk to elasticsearch!!! Kibana bootstrapped correctly and I was able to bring it up fine at this point.






        share|improve this answer













        So after a LOT of trial and error, I finally figured out the problem. It looks like running the docker image using the standard:




        docker run -d -p 5601:5601 my-kibana-image:1




        doesnt suffice. The host resolution to elasticsearch (which is an external host) ONLY works when I change the network configuration from the default to "host". Doing this




        docker run --net=host -d -p 5601:5601 my-kibana-image:1




        finally fixed the issue and the kibana container instance was FINALLY able to talk to elasticsearch!!! Kibana bootstrapped correctly and I was able to bring it up fine at this point.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 15 '18 at 1:10









        Dorian McAllisterDorian McAllister

        548




        548





























            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%2f53305161%2funable-to-access-external-urls-from-within-docker-container%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

            Use pre created SQLite database for Android project in kotlin

            Darth Vader #20

            Ondo