why I can't ping my docker container?

I run a docker container, which is named “redis”. I want to use the “redis” container redis service, but I can’t ping the container!

As the picture shows, my “redis” container is IP address is 172.17.0.15, but I can’t connect to it.

  • Crons in cron.d won't run on Ubuntu running inside Docker Container
  • redirect the output of docker-exec
  • How do to use fluentD to parse multi-line docker logs?
  • Docker for parallel tasks
  • Docker/Boot2Docker/Fig + RabbitMQ host issue; pika.exceptions.AMQPConnectionError: [Errno -2] Name or service not known
  • Merging files tree with parent Docker image
  • I want to use the redis services. What is wrong with my configuration?

    enter image description here

  • DNS not working on Docker image running in Google Compute Engine node
  • fluentd JSON Parser: get Messages that cannot be parsed
  • How to create a docker machine without TLS to use in Mac Env with Java
  • running incorrect docker image osx
  • Docker Swarm - Tasks Running On Manager Unreachable
  • Docker maven and jenkins, mvn install failed requesting junit:junit:jar:3.x
  • One Solution collect form web for “why I can't ping my docker container?”

    Because you’re not on the same network. Containers are started on their own network by default, separate to the host’s network.

    If you run:

    docker run -it debian ping 172.17.0.15
    

    You should find it works. Even better, you can link containers and refer to them by name:

    $ docker run -d --name redis redis
    $ docker run --link redis:redis redis redis-cli -h redis ping
    PONG
    

    If you really want to access redis from your host, just publish a port through to the host:

    $ docker run -d -p 6379:6379 redis
    

    You should now be able to reach it at localhost:6379 on the host.

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.