DEV Community

Cover image for How to Configure Web Server on the Top of Docker Container??
Piyush Bagani
Piyush Bagani

Posted on

How to Configure Web Server on the Top of Docker Container??

After Reading this full article, You will be able to configure Web-Server on The top of Docker Container.

Prerequisites:

Docker Must be installed
Basic Knowledge of how to launch docker container.

So Without any further delay, Let’s get started.

Here For performing this task I am using REDHAT 8 as the BaseOS.

Step-1: Start The Docker Service in Redhat 8 Operating System.

alt text
Step-2: Pull the Docker Image

To launch any isolated container we must have an image downloaded on our local system. Here I am pulling CentOS image from docker hub.
alt text
Step-3: Launch the container on the top of Redhat 8

Here the Command to launch a container with name as webserver can be seen below.

alt text
Step-4: Install Apache Httpd software.

Here Before installing make sure to stop firewall in Base OS. In Redhat 8 to stop firewall we use systemctl stop firewalld command.

To install httpd software, run yum install httpd -y command inside the docker container.
alt text
Step-5: Start The HTTPD service

Normally in Redhat 8, to start this service we always use systemctl start httpd command.But in docker we don’t have that command hence instead we use the command which is mentioned in the image below.
alt text

Step-6: Navigate to /var/www/html.

In this directory we have to put the webpages created by us. Here I have created one webpage called index.html.
alt text
The HTML code of this file looks like this. In this way you can also but various webpages in this folder.
alt text

Step-7: Install The net-tools software.
This software provides the command to see IP of container.
alt text

Step-8: Access the webpage in Browser.
Now we can access the webpage in browser as below. Syntax is IP/filename.html

alt text

VOILA!!! We have done it.

BONUS:

We saw how to configure webserver on the top of docker container. Now we can also Setup Python interpreter and hence run python code on the top of docker container.

We can install python3 on docker container using yum command.
alt text
Thats all!! Python 3 is installed in Docker Container, Now you can create a python file and simply run it.
alt text
alt text
The Final Outcome looks like below.
alt text
That’s ALL for NOW !!!

Thank You So Much For Reading :)

Top comments (2)

Collapse
 
joshghent profile image
Josh Ghent

Great article Piyush! I personally find jwilder/nginx-reverse-proxy great for opening up docker containers to the web. It's super simple to use. I've seen many others use nginxproxymanager.com. You get a lot of stuff out the box like monitoring and SSL that you don't get with Apache. Hope that helps :)

Collapse
 
piyushbagani15 profile image
Piyush Bagani

Thanks For Your Comment. I will definitely look for it.😊