Cookiecutter template for scaffolding web application/api infrastructure on AWS using Terraform and Ansible
Install the latest Cookiecutter if you haven't installed it yet (this requires Cookiecutter 1.4.0 or higher):
pip install cookiecutter
Generate project:
cookiecutter https://github.com/nickatnight/cookiecutter-aws-webapp-ops.git
The generator (cookiecutter) will ask you for some data, you might want to have at hand before generating the project.
The input variables, with their default values (some auto generated) are:
project_name
: The name of the projectproject_slug
: The development friendly name of the project. By default, based on the project nameproject_slug_simple
: The database friendly name of the project. By default, based on the project namefirst_name
: Name of individual running the projectssh_pub_key_file
: Absolute path of the ssh pub key file for above useraws_region
: AWS region where resources will be deployedaws_cli_version
: AWS cli version to install on ec2 instanceami_distro
: AMI distro namerds_username
: Master username for RDS instancerds_password
: Master username password for RDS instancerds_storage
: Amount of storage in gigabytesrds_engine
: RDS databse enginerds_engine_version
: RDS databse engine versionrds_instance_class
: RDS databse engine instance classrds_name
: RDS databse nameec2_instance_type
: EC2 instance typeecr_repo_name
: ECR repository nameenable_stack_monitoring
: Enable Docker Swarm monitoring stack
After using this generator, your new project (the directory created) will contain an extensive README.md
with instructions for development, deployment, etc. You can view it here