| Tags | kubernetes nginx | 
| Hard Prerequisites | |
| IMPORTANT: Please review these prerequisites, they include important information that will help you with this content. | |
| 
                        
                        
                        
                        
                        
                         | 
                |
| Soft Prerequisites | 
                        
                        
                        
                        
                        
                         | 
                
Let’s setup TLS on our hello world Nginx server.
On the GitHub repository, create a file called nginx.conf under a folder named nginx.
Change <your-domain> for the domain given to you by Umuzi.
# this redirects port 80 to port 443
server {
    listen 80;
    # change to your domain
    server_name <your-domain>;
    location / {
        return 301 https://$host$request_uri;
    }
}
server {
    listen 443 ssl;
    server_name <your-domain>;
    
    # remember these routes from certbot
    ssl_certificate /etc/letsencrypt/live/<your-domain>/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/<your-domain>/privkey.pem;
    location / {
        root /var/www/html;
        index index.html;
    }
    # SSL settings (add your SSL-related directives here)
    # Example SSL settings:
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers 'TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384';
    ssl_prefer_server_ciphers off;
    
    # this was the last command in the certbot section.
    ssl_dhparam /etc/ssl/certs/dhparam.pem;
}
Create another file under the nginx folder named index.html. This will be our front page, for now.
<!DOCTYPE html>
<html>
<head>
    <title>Welcome to My Website</title>
</head>
<body>
    <h1>Hello, Nginx!</h1>
    <p>This is the default index page for your Nginx web server.</p>
    <p>Feel free to replace this content with your own website's content.</p>
</body>
</html> 
Save the files and commit the changes.
On the EC2 instance, pull the changes, copy the files and restart Nginx.
# enter the repository and pull the changes
cd /home/ubuntu/umuzi-k8s
git pull
# copy the created files
sudo cp nginx/nginx.conf /etc/nginx/conf.d/nginx.conf
sudo cp nginx/index.html /var/www/html/
# restart nginx
sudo systemctl restart nginx
Navigate to https://your-domain and you should see the HTML page we just created!