The Nautilus application development team shared static website content that needs to be hosted on the httpd web server using a containerised platform. The team has shared details with the DevOps team, and we need to set up an environment according to those guidelines. Below are the details:

a. On App Server 3 in Stratos DC create a container named httpd using a docker compose file /opt/docker/docker-compose.yml (please use the exact name for file).

b. Use httpd (preferably latest tag) image for container and make sure container is named as httpd; you can use any name for service.

c. Map 80 number port of container with port 6000 of docker host.

d. Map container's /usr/local/apache2/htdocs volume with /opt/itadmin volume of docker host which is already there. (please do not modify any data within these locations).

Connect to App Server 3

ssh banner@stapp03 sudo -i 

Password for banner: BigGr33n

Create the Docker Directory

mkdir -p /opt/docker 

Verify the Host Volume Exists

ls -la /opt/itadmin 

Output:

total 16 drwxr-xr-x 2 root root 4096 Oct 27 11:34 . drwxr-xr-x 1 root root 4096 Oct 27 11:34 .. -rw-r--r-- 1 root root 34 Oct 27 11:34 index1.html 

The host directory /opt/itadmin exists and contains the static website content (index1.html).

Create the Docker Compose File

vi /opt/docker/docker-compose.yml 

Add the following content:

version: '3.8' services: httpd: image: httpd:latest container_name: httpd ports: - "6000:80" volumes: - /opt/itadmin:/usr/local/apache2/htdocs 

Verify the file:

cat /opt/docker/docker-compose.yml 

Output:

version: '3.8' services: httpd: image: httpd:latest container_name: httpd ports: - "6000:80" volumes: - /opt/itadmin:/usr/local/apache2/htdocs 

Start the Container Using Docker Compose

cd /opt/docker docker compose up -d 

Output:

WARN[0000] /opt/docker/docker-compose.yml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion [+] up 9/9 ✔ Image httpd:latest Pulled 4.9s ✔ Network docker_default Created 0.1s ✔ Container httpd Created 0.1s 

The warning about the version attribute is informational only; it does not affect functionality.

Verify the Container is Running

docker ps | grep httpd 

Output:

c1795d69f717 httpd:latest "httpd-foreground" 5 seconds ago Up 4 seconds 0.0.0.0:6000->80/tcp, :::6000->80/tcp httpd 

The container httpd is running and port 6000 is mapped to container port 80.

Verify the Port Mapping

docker port httpd 

Output:

80/tcp -> 0.0.0.0:6000 80/tcp -> [::]:6000 

Verify the Volume Mapping

docker inspect httpd --format='{{range .Mounts}}{{.Source}} -> {{.Destination}}{{end}}' 

Output:

/opt/itadmin -> /usr/local/apache2/htdocs 

The host /opt/itadmin is correctly mapped to the container document root.

Test the Website

curl -I http://localhost:6000/ 

Output:

HTTP/1.1 200 OK Date: Tue, 27 Oct 2026 11:37:44 GMT Server: Apache/2.4.69 (Unix) Content-Type: text/html;charset=ISO-8859-1 

The HTTP 200 OK response confirms the web server is accessible on host port 6000.

Complete Command Sequence

ssh banner@stapp03 sudo -i mkdir -p /opt/docker cat > /opt/docker/docker-compose.yml << 'EOF' version: '3.8' services: httpd: image: httpd:latest container_name: httpd ports: - "6000:80" volumes: - /opt/itadmin:/usr/local/apache2/htdocs EOF cat /opt/docker/docker-compose.yml cd /opt/docker docker compose up -d docker ps | grep httpd docker port httpd docker inspect httpd --format='{{range .Mounts}}{{.Source}} -> {{.Destination}}{{end}}' curl -I http://localhost:6000/