skip to Main Content

I have a running apache webserver in centos docker container which is hosted by AWS redhat instance.

I am able to curl my container webserver in AWS instance local host but unable to access publicly in my laptop web browser.

details of the Webserver:

docker run -d --name httpd -p 8080:8080 -v /home/ec2-user/apache/web1/www:/var/www:Z docker.io/centos/httpd-24-centos7

The output of docker ps:

CONTAINER ID        IMAGE                               COMMAND                  CREATED             STATUS              PORTS                              NAMES
abd790b28b51        docker.io/centos/httpd-24-centos7   "container-entrypo..."   2 hours ago         Up 20 minutes       0.0.0.0:8080->8080/tcp, 8443/tcp   httpd

In AWS instance :

curl http://localhost:8080

Hello World!!!

But unable to get this in public internet using AWS host public ip from my laptop.

The output of netstat -tulpn:

(No info could be read for "-p": geteuid()=1000 but you should be root.)
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      -                   
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      -                   
tcp6       0      0 :::8080                 :::*                    LISTEN      -                   
tcp6       0      0 :::22                   :::*                    LISTEN      -                   
tcp6       0      0 ::1:25                  :::*                    LISTEN      -                   
udp        0      0 0.0.0.0:68              0.0.0.0:*                           -                   
udp        0      0 127.0.0.1:323           0.0.0.0:*                           -                   
udp6       0      0 ::1:323                 :::*                                -

My AWS Security inbound rules:

HTTP    TCP 80  157.51.138.196/32
All traffic All All 157.51.138.196/32
SSH TCP 22  157.51.138.196/32
DNS (TCP)   TCP 53  157.51.138.196/32
HTTPS   TCP 443 157.51.138.196/32

2

Answers


  1. Chosen as BEST ANSWER

    Hurray it Worked!!!

    But not sure how it worked actually ;-) Will try to find out that...

    I just stopped all apache containers and removed them entirely. Then executed the below command and everything worked perfect.

    While using the below make sure you are mapping the volume (-v) correctly to the index.html file in your host.

    docker run -d --name httpd -p 9080:8080 -v /home/ec2-user/apache/web1/www/html:/var/www/html:Z docker.io/centos/httpd-24-centos7
    

  2. you are missing inbound rule 8080 on instance security group add it and check and inform further if not work.

    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search