{"id":14957775,"url":"https://github.com/provose/provose","last_synced_at":"2025-10-09T16:12:24.110Z","repository":{"id":37843126,"uuid":"251238300","full_name":"provose/provose","owner":"provose","description":"Provose is a new way to manage your Amazon Web Services infrastructure.","archived":false,"fork":false,"pushed_at":"2023-01-13T00:05:18.000Z","size":2788,"stargazers_count":36,"open_issues_count":1,"forks_count":3,"subscribers_count":3,"default_branch":"v3.0.x","last_synced_at":"2025-04-07T00:27:31.391Z","etag":null,"topics":["amazon-web-services","aws","docker","ecs","elastic-container-service","hashicorp-terraform","infrastructure","terraform","terraform-module"],"latest_commit_sha":null,"homepage":"https://provose.com","language":"HCL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/provose.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"security_groups.tf","support":null}},"created_at":"2020-03-30T07:57:03.000Z","updated_at":"2023-11-23T12:50:18.000Z","dependencies_parsed_at":"2023-02-09T13:46:45.730Z","dependency_job_id":null,"html_url":"https://github.com/provose/provose","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/provose/provose","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/provose%2Fprovose","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/provose%2Fprovose/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/provose%2Fprovose/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/provose%2Fprovose/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/provose","download_url":"https://codeload.github.com/provose/provose/tar.gz/refs/heads/v3.0.x","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/provose%2Fprovose/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279001762,"owners_count":26083171,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-09T02:00:07.460Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["amazon-web-services","aws","docker","ecs","elastic-container-service","hashicorp-terraform","infrastructure","terraform","terraform-module"],"created_at":"2024-09-24T13:15:33.810Z","updated_at":"2025-10-09T16:12:24.081Z","avatar_url":"https://github.com/provose.png","language":"HCL","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cimg src=\"https://provose.com/assets/images/1x/logo-blue-on-transparent-1x.png\"  /\u003e\n\n# Provose is the easiest way to manage your Amazon Web Service (AWS) infrastructure.\n\n## Provose is built on top of [HashiCorp Terraform](https://www.terraform.io/), an industry-leading infrastructure-as-code tool.\n\nProvose is a Terraform module that deploys hundreds of underlying cloud resources--containers, databases, TLS certificates, DNS rules, and more--with just a few lines of code.\n\n## Provose is free and open-source software forever.\n\nProvose is distributed under the MIT license. You can download Provose at [github.com/provose/provose](https://github.com/provose/provose), which is also where you can also submit bug reports and contribute improvements.\n\n## Learn Provose from [Tutorial](https://provose.com/v3.0/tutorial/) or the [Reference](https://provose.com/v3.0/reference/).\n\nProvose is easy to learn. You can get started with just a few lines of code. You can also find an example of setting up a [Ghost.org blog on Amazon Web Services using Provose](https://github.com/provose/provose-ghost-website-example).\n\n## Subscribe to the Provose newsletter for updates\n\n[Click here](https://provose.substack.com/) to find the Provose newsletter.\n\n## Here is what Provose code looks like.\n\nBelow is an example of what Provose looks like, provisioning a [container serving HTTP traffic on AWS Fargate](https://provose.com/v3.0/reference/containers/):\n\n```terraform\nmodule \"myproject\" {\n  source = \"github.com/provose/provose?ref=v3.0.0\"\n  provose_config = {\n    authentication = {\n      aws = {\n        region = \"us-east-1\"\n      }\n    }\n    name                 = \"myproject\"\n    # Provose requires a domain name to be used for internal purposes.\n    # This allows us to protect internal services using\n    # AWS Certificate Manager (ACM) certificates.\n    internal_root_domain = \"example-internal.com\"\n    internal_subdomain   = \"production\"\n  }\n  containers = {\n    hello = {\n      image = {\n        # This is the name of a publicly-available container on DockerHub.\n        # Private Elastic Container Registry (ECR) containers can also be used.\n        name             = \"nginxdemos/hello\"\n        # This is a container tag on DockerHub.\n        tag              = \"latest\"\n        private_registry = false\n      }\n      public = {\n        https = {\n          internal_http_port              = 80\n          internal_http_health_check_path = \"/\"\n          # You need to have example.com as a domain in your AWS\n          # account with DNS managed by Route 53.\n          # Provose will set up an Application Load Balancer serving\n          # HTTP and HTTPS traffic to this group of containers.\n          public_dns_names                = [\"hello.example.com\"]\n        }\n      }\n      instances = {\n        # Set this to an EC2 instance type to use AWS ECS-EC2\n        # or FARGATE_SPOT to automatically save money by using Spot\n        # instances.\n        instance_type   = \"FARGATE\"\n        container_count = 1\n        cpu             = 256\n        memory          = 512\n      }\n    }\n  }\n}\n\n\n```\n\nYou can also take a look at how to use Provose to provision:\n * [MySQL](https://provose.com/v3.0/reference/mysql_clusters/)\n * [PostgreSQL](https://provose.com/v3.0/reference/postgresql_clusters/)\n * [Elasticsearch](https://provose.com/v3.0/reference/elasticsearch_clusters/)\n * [Redis](https://provose.com/v3.0/reference/redis_clusters/)\n * [Lustre](https://provose.com/v3.0/reference/lustre_file_systems/)\n * [bare EC2 instances](https://provose.com/v3.0/reference/ec2_on_demand_instances/)\n\nand a lot more on Amazon Web Services.\n\n## How to report a security issue\n\n**To report a security issue, email security@neocrym.com. Do not post on GitHub.**\n\n## Dependencies\n\nProvose is a [HashiCorp Terraform module](https://www.terraform.io/), and needs the [latest version of Terraform installed](https://learn.hashicorp.com/terraform/getting-started/install.html) on your machine to run.\n\nAdditionally, Provose also depends on the [AWS CLI version 2](https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2.html) to run additional configuration commands not yet supported in Terraform.\n\nIf you want to build and deploy Docker images with Provose, you will also need the [`docker` command](https://docs.docker.com/engine/install/) installed on your machine.\n\n## Installation\n\nFollow the [Tutorial](https://provose.com/v3.0/tutorial/) for instructions on how to install and use Provose.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprovose%2Fprovose","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprovose%2Fprovose","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprovose%2Fprovose/lists"}