This repository contains the code to host a personal portfolio website using docker compose.
- Server with git, docker and docker-compose installed and configured.
- Domain DNS record connected to the target server.
-
Clone the repository under
bin/portfolio_webserver
.git clone https://github.com/sashuu69/portfolio_site.git bin/portfolio_webserver
-
Create an SSL certificate using the command
sudo certbot certonly --standalone -d <Host URL> -d www.<Host URL>
-
Copy the SSL certificates under
config/ssl
and updatedocker-compose.yaml
to connect the SSL certificates. -
Build using the command
docker compose build
ordocker-compose build
. -
Bring up the containers using the command
./scripts/deploy.sh <domain-name>
. -
(Optional) Bring down the containers using the command
./scripts/destroy.sh <domain-name>
.
- Portfolio Webserver - Python Alpine
- Reverse Proxy - Nginx
- Docker compose is used to create a multi-container application
For information about the Flask webpage, please refer to the link sashu69/portfolio_website.
- Sashwat K sashwat0001@gmail.com
If you face any bugs or want to request a new feature, please create an issue under the repository and provide appropriate labels respectively. If you want to do these by yourself, feel free to raise a PR and I will do what is necessary.
If you want to support me, donations will be helpful.
- sashuu69/portfolio-website - The portfolio website flask app
- sashuu69/portfolio-website-infrastructure - The terraform and ansible code to bring portfolio website on AWS
- sashuu69/portfolio-website-ssl-cert-generator - The terraform code to generate/renew SSL certificates