It might be still confusing to you at first, as you're used to list of incremental steps how to get to the final result, while this description instead is declarative (you're describing not the steps to do, but what the final image should be).
It's basically comparing bash script with bunch of "aws" CLI invocations to a terraform or cloudformation file.
- it contains information how to actually build the application
- how to set up a dev environment
- how to build application with musl
- how to build application with glibc
- how to build python with only with expat, libffi, openssl, zlib packages
- how to take botocore and patch it up to only have cloudformation, dynamodb, ec2, elbv2, ssm, sso, sts clients
Try to get all of that into a single Dockerfile and see how complicated mess you end up with.
The actual docker configuration is here:
https://gist.github.com/takeda/17b6b645ad4758d5aaf472b84447b...
It might be still confusing to you at first, as you're used to list of incremental steps how to get to the final result, while this description instead is declarative (you're describing not the steps to do, but what the final image should be).
It's basically comparing bash script with bunch of "aws" CLI invocations to a terraform or cloudformation file.