Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Building Modern Application with Containers

Building Modern Application with Containers

Containers are a powerful way for developers to package and deploy their applications. They are lightweight and provide a consistent, portable software environment for applications to easily run and scale anywhere. However, deploying our containers still creates another layer of complexity, and that's where Amazon ECS can help you. Amazon ECS makes it easy to use containers as a building block for your applications by eliminating the need for you to install, operate, and scale your cluster management infrastructure.
In this talk packed with demos, I'll show you how we can easily deploy, release and run containerized applications using Amazon ECS, integration with Amazon ECR, and using AWS Copilot to streamline the process.

Donnie Prakoso

February 10, 2022
Tweet

More Decks by Donnie Prakoso

Other Decks in Technology

Transcript

  1. © 2021, Amazon Web Services, Inc. or its Affiliates. Developer

    Advocate, ASEAN Amazon Web Services Building Modern Application with Containers Donnie Prakoso Developer Edition @donnieprakoso donnieprakoso go.donnie.id/youtube donnieprakoso
  2. © 2021, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Donnie Prakoso, MSc Senior Developer Advocate, ASEAN • 17+ years in software development and system operations • Banking industry, telco to startups • From software developer to R&D manager to CTO • I talk a lot about microservices and machine learning • Self-proclaimed Barista and Café Racer enthusiasts donnieprakoso go.donnie.id/youtube @donnieprakoso donnieprakoso
  3. © 2021, Amazon Web Services, Inc. or its Affiliates. ©

    2021, Amazon Web Services, Inc. or its Affiliates. @donnieprakoso donnieprakoso go.donnie.id/youtube donnieprakoso • Understand the goal of building with modern approach • Understand the overall essential container services on AWS • How to use AWS Copilot to deploy your application • How to deploy another service with AWS Copilot • How to integrate services Key Takeaways
  4. © 2021, Amazon Web Services, Inc. or its Affiliates. @donnieprakoso

    donnieprakoso go.donnie.id/youtube donnieprakoso Modern Application. The combination of modern technologies, architectures, software delivery practices, and operational processes that lead teams to deliver value more quickly, frequently, consistently, and safely.
  5. © 2021, Amazon Web Services, Inc. or its Affiliates. ©

    2021, Amazon Web Services, Inc. or its Affiliates. @donnieprakoso donnieprakoso go.donnie.id/youtube donnieprakoso Goal of Modern Application Value for Customers Build better products Release features faster Experiment and Innovate more often Focus on business logic Decouple software systems
  6. © 2021, Amazon Web Services, Inc. or its Affiliates. @donnieprakoso

    donnieprakoso go.donnie.id/youtube donnieprakoso Developers provision infrastructure on demand and deploy in minutes Software delivery is automated via continuous delivery pipelines Applications are fully instrumented for metric and log collection Organizations standardize on tools and best practices Security best practices are baked in to every application and service Developers wait days/weeks for infrastructure to be provisioned Tooling is inconsistent across teams and business units Software is manually deployed on an ad-hoc basis Security is configured ad-hoc for each application Developers lack visibility into applications running in production Challenge Solution From Challenges to Solutions
  7. © 2021, Amazon Web Services, Inc. or its Affiliates. @donnieprakoso

    donnieprakoso go.donnie.id/youtube donnieprakoso Code Code packages Operating system packages Runtime Applications aren’t just code, they have dependencies
  8. © 2021, Amazon Web Services, Inc. or its Affiliates. @donnieprakoso

    donnieprakoso go.donnie.id/youtube donnieprakoso Code Code packages Operating system packages Container image Runtime Containers turn applications into one deployable artifact
  9. © 2021, Amazon Web Services, Inc. or its Affiliates. ©

    2021, Amazon Web Services, Inc. or its Affiliates. @donnieprakoso donnieprakoso go.donnie.id/youtube donnieprakoso Local Laptop Staging / QA Production On-Prem Four environments, same container
  10. © 2021, Amazon Web Services, Inc. or its Affiliates. @donnieprakoso

    donnieprakoso go.donnie.id/youtube donnieprakoso Running containers in production is hard Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS Server Guest OS
  11. © 2021, Amazon Web Services, Inc. or its Affiliates. ©

    2021, Amazon Web Services, Inc. or its Affiliates. @donnieprakoso donnieprakoso go.donnie.id/youtube donnieprakoso AWS Container Services Landscape Management Deployment, scheduling, scaling, and management of containerized applications Hosting Where the containers run Image Registry Container image repository
  12. © 2021, Amazon Web Services, Inc. or its Affiliates. ©

    2021, Amazon Web Services, Inc. or its Affiliates. @donnieprakoso donnieprakoso go.donnie.id/youtube donnieprakoso Simplicity + Serverless = 🚀
  13. © 2021, Amazon Web Services, Inc. or its Affiliates. ©

    2021, Amazon Web Services, Inc. or its Affiliates. @donnieprakoso donnieprakoso go.donnie.id/youtube donnieprakoso Introducing AWS Copilot CLI • How do I deploy applications? • How to check the applications? • How do I add a service & integrate with AWS services? • How can I test without affecting productions? • How do I release applications? • How about cleaning up? • ...and more! ✅ Solve all of these challenges
  14. © 2021, Amazon Web Services, Inc. or its Affiliates. ©

    2021, Amazon Web Services, Inc. or its Affiliates. @donnieprakoso donnieprakoso go.donnie.id/youtube donnieprakoso DEMO Deploy API with AWS Copilot You will learn how to : 1. Install AWS Copilot 2. Initialize your first app 3. Create environment 4. Deploy your API
  15. © 2021, Amazon Web Services, Inc. or its Affiliates. ©

    2021, Amazon Web Services, Inc. or its Affiliates. @donnieprakoso donnieprakoso go.donnie.id/youtube donnieprakoso Diagram Architecture
  16. © 2021, Amazon Web Services, Inc. or its Affiliates. ©

    2021, Amazon Web Services, Inc. or its Affiliates. @donnieprakoso donnieprakoso go.donnie.id/youtube donnieprakoso DEMO Deploy Web and Integrate with API You will learn how to : 1. Create and deploy a new service 2. Change HTTP path routing 3. Synchronous communication using service discovery
  17. © 2021, Amazon Web Services, Inc. or its Affiliates. ©

    2021, Amazon Web Services, Inc. or its Affiliates. @donnieprakoso donnieprakoso go.donnie.id/youtube donnieprakoso Diagram Architecture
  18. © 2021, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. www.copilot.rocks 🤘
  19. © 2021, Amazon Web Services, Inc. or its Affiliates. Q&A

    Time! Donnie Prakoso @donnieprakoso donnieprakoso Developer Advocate, ASEAN Amazon Web Services go.donnie.id/youtube donnieprakoso