Day 86 (Project-7): Deploying Portfolio App on AWS S3 with GitHub Actions ๐ŸŒŸ


3 min read

Day 86 (Project-7): Deploying Portfolio App on AWS S3 with GitHub Actions ๐ŸŒŸ

Hey there, fellow tech enthusiasts! Today, I'm excited to share with you a fascinating project - deploying a Portfolio app on AWS S3 using GitHub Actions. Let's dive into the details and explore how we can leverage GitHub Actions for seamless CI/CD integration.

Project Description ๐Ÿ“

In this project, we'll embark on the journey of deploying a Portfolio app on AWS S3, utilizing the power of GitHub Actions for automated CI/CD. Here's a sneak peek into what's in store:

  • GitHub Actions Integration: We'll harness the capabilities of GitHub Actions to automate the deployment process directly from our GitHub repository.

  • AWS S3 Configuration: We'll configure an S3 bucket in AWS to host our Portfolio app, ensuring scalability and reliability.

  • IAM User Setup: We'll create an IAM user with the necessary permissions to interact with AWS services securely.

  • Project Steps: We'll walk through each step of the deployment process, from retrieving the Portfolio app code to executing GitHub Actions workflows seamlessly.

Pre-requisites ๐Ÿ› ๏ธ

Before we dive into the project, let's ensure we have the necessary pre-requisites in place:

  • EC2 Instance Creation: Set up an EC2 instance to serve as our development environment or choose to work locally.

  • S3 Bucket Creation: Create an S3 bucket in AWS to host our Portfolio app.

  • IAM User Setup: Create an IAM user with the required permissions to interact with S3 and other AWS services securely.

Project Steps ๐Ÿš€

Let's break down the deployment process into actionable steps:

  1. Retrieve Portfolio App from GitHub: Clone the Portfolio app code from GitHub onto your local machine or EC2 instance to kickstart the deployment process.

  2. Build GitHub Actions Workflow:

    • Navigate to the GitHub repository for the Portfolio app and set up a new workflow under the Actions option.

    • Write the YAML file required to define the workflow for GitHub Actions, orchestrating the CI/CD process seamlessly.

  3. Setup AWS CLI and AWS Login in YAML:

    • Configure AWS CLI and AWS Login within the YAML file to enable synchronization of the Portfolio app to S3 as part of the GitHub Actions workflow.

  4. Configure AWS S3 for Hosting:

    • Setup AWS S3 with public access and configure static website hosting to ensure seamless accessibility of the Portfolio app.

  5. Provide Bucket Permissions in S3:

    • Grant appropriate permissions to the S3 bucket to enable hosting of the Portfolio app securely.

  6. Modify index.html for GitHub Actions:

    • Adjust the index.html file to trigger the GitHub Actions workflow upon deployment, ensuring smooth execution of the Portfolio website.
  7. Execute GitHub Actions Workflow:

    • Execute the GitHub Actions workflow, triggering the deployment process automatically.

  8. Activate Website:

    • With the successful execution of the workflow, the Portfolio website becomes active and accessible.

Conclusion ๐ŸŽ‰

And there you have it - a successful deployment of your Portfolio app on AWS S3 using GitHub Actions! Thank you for joining me on this journey. Wishing you a fantastic day ahead!

#GitHubActions #AWSS3 #PortfolioApp #CI/CD #TechProjects #Day86 ๐Ÿ› ๏ธ๐Ÿ’ปโœจ