{"id":26262485,"url":"https://github.com/sobekcore/side-projects-provider","last_synced_at":"2026-04-19T19:33:10.987Z","repository":{"id":119547884,"uuid":"592941260","full_name":"sobekcore/side-projects-provider","owner":"sobekcore","description":"Simple configuration to host multiple projects on a single AWS EC2 instance with a single domain and it's subdomains.","archived":false,"fork":false,"pushed_at":"2025-02-20T22:38:37.000Z","size":5,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-01T21:47:40.705Z","etag":null,"topics":["aws","certbot","docker","ec2","nginx"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sobekcore.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-01-24T21:27:52.000Z","updated_at":"2025-02-20T22:38:40.000Z","dependencies_parsed_at":null,"dependency_job_id":"8bede8f1-130a-47a3-bffc-495a1e1fbc5d","html_url":"https://github.com/sobekcore/side-projects-provider","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sobekcore/side-projects-provider","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sobekcore%2Fside-projects-provider","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sobekcore%2Fside-projects-provider/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sobekcore%2Fside-projects-provider/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sobekcore%2Fside-projects-provider/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sobekcore","download_url":"https://codeload.github.com/sobekcore/side-projects-provider/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sobekcore%2Fside-projects-provider/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32020642,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T20:23:30.271Z","status":"online","status_checked_at":"2026-04-19T02:00:07.110Z","response_time":55,"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":["aws","certbot","docker","ec2","nginx"],"created_at":"2025-03-14T00:19:24.689Z","updated_at":"2026-04-19T19:33:10.743Z","avatar_url":"https://github.com/sobekcore.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Side Projects Provider\nThis repository contains many different infrastructure components to support hosting multiple side projects more easily. The setup is optimized towards minimal resource usage, and is proven to work just fine with 5+ services being deployed simultaneously on a single t3.nano EC2 instance.\n\nEvery command in this guide assumes that the repository will be cloned into `~/side-projects-provider`, and that the commands will be launched from `~/side-projects-provider/docker`.\n\n## Prerequisites\n1. Create memory swapfile (https://repost.aws/knowledge-center/ec2-memory-swap-file).\n2. Add `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY` environment variables to `~/.bash_profile`.\n3. Run `chmod +x` on all scripts.\n\n## Deployment\nIf all the services are described directly in `docker-compose.override.yml`, then the simple deployment process can be successfully conducted with:\n```shell\ndocker compose up -d \n```\n\nIf however the services are more complex and contain their own `docker-compose.yml` files, then proceed with creating `Makefile` based on `Makefile.example` template:\n```shell\ncp Makefile.example Makefile\n```\nand then deploy the services with:\n```shell\nmake start\n```\n\n## SSL\nTo generate SSL certificate for the first time run:\n```shell\nmake generate\n```\n\nTo automatically renew SSL certificate add this schedule expression to `crontab -e`:\n```shell\n0 2 * * 0 make -C ~/side-projects-provider/docker renew\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsobekcore%2Fside-projects-provider","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsobekcore%2Fside-projects-provider","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsobekcore%2Fside-projects-provider/lists"}