AWS DevOps: Continuous Docker Deployment to AWS Fargate from GitLab

AWS DevOps: Continuous Docker Deployment to AWS Fargate from GitLab

1h 25mAdvanced2019-07-31

Authors

Jeremy Villeneuve

Jeremy Villeneuve

Founder of Halvanta, LLC, an IT consulting firm

Course details

Fargate makes it easy to host and scale your Docker containers on AWS; GitLab can quickly deploy your containers to Fargate so you can release early and often. Learn how to combine these two tools into an automated, continuous DevOps pipeline that makes deploying and scaling your container-based applications a quick and easy endeavor. Instructor Jeremy “JV” Villeneuve first shows how to install and configure GitLab using the official Docker image, and maintain GitLab through regular automated backups and upgrades. Then he explains how to create ECS clusters to run containers on Fargate via the ECS Fargate command-line interface (CLI). Finally, learn how to script deployment of new containers from GitLab to Fargate and test your setup to ensure everything works as planned.

Learning objectives
Setting up GitLab
Backing up GitLab
Upgrading GitLab
Creating a Fargate cluster via the CLI
Creating a Fargate task via the CLI
Updating a Fargate service via the CLI
Creating and testing a GitLab deployment pipeline

Skills covered

GitLabVirtualizationDevOps FoundationsAmazon Web Services (AWS)AmazonDevOpsCloud ServicesCloud PlatformsNetwork and System AdministrationCloud ComputingDeep Dive (X:Y)

Concepts

Introduction

  • DevOps for Fargate and GitLab
  • What you should know
  • Course outline

Set Up a Secure GitLab Installation

  • Gitlab server requirement
  • Installing Docker
  • Change the SSH Port
  • Using a custom domain with GitLab
  • Running GitLab in Docker
  • Configure GitLab
  • GitLab first time setup
  • Pushing a container to the registry

DevOps for GitLab

  • Monitoring GitLab
  • GitLab backups
  • Upgrading GitLab

DevOps for Fargate

  • ECS launch types - Fargate vs. EC2
  • Creating a Fargate cluster from the CLI
  • Creating a Fargate task with the CLI
  • Permissions for ECS to access the secret
  • Creating a Fargate service with the CLI

Continuous Deployment with Fargate and GitLab

  • Install the GitLab Runner
  • Create a deployment pipeline for Fargate
  • Testing the pipeline

Conclusion

  • Next steps
40,000 Toman