{"id":18426925,"url":"https://github.com/rimelek/homelab","last_synced_at":"2025-04-07T16:32:56.315Z","repository":{"id":192661580,"uuid":"655402919","full_name":"rimelek/homelab","owner":"rimelek","description":"Source code to create a home lab. Part of a video tutorial","archived":false,"fork":false,"pushed_at":"2024-06-01T19:19:56.000Z","size":40,"stargazers_count":11,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-22T21:26:21.319Z","etag":null,"topics":["ansible","homelab","tutorial"],"latest_commit_sha":null,"homepage":"","language":"Shell","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/rimelek.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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}},"created_at":"2023-06-18T19:33:34.000Z","updated_at":"2025-03-18T03:12:35.000Z","dependencies_parsed_at":"2023-11-18T15:24:18.232Z","dependency_job_id":"3e04ae6d-cc17-47eb-bd69-a12a5befe21c","html_url":"https://github.com/rimelek/homelab","commit_stats":null,"previous_names":["rimelek/homelab"],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rimelek%2Fhomelab","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rimelek%2Fhomelab/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rimelek%2Fhomelab/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rimelek%2Fhomelab/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rimelek","download_url":"https://codeload.github.com/rimelek/homelab/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247688268,"owners_count":20979631,"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","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":["ansible","homelab","tutorial"],"created_at":"2024-11-06T05:09:09.750Z","updated_at":"2025-04-07T16:32:55.974Z","avatar_url":"https://github.com/rimelek.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# README\n\nThis project was created to help you build your own home lab where you can test\nyour applications and configurations without breaking your workstation, so you can\nlearn on cheap devices without paying for more expensive cloud services.\n\nThe project contains code written for the tutorial, but you can also use parts of it\nif you refer to this repository.\n\nTutorial on YouTube in English: \u003chttps://www.youtube.com/watch?v=K9grKS335Mo\u0026list=PLzMwEMzC_9o7VN1qlfh-avKsgmiU8Jofv\u003e\n\nTutorial on YouTube in Hungarian: \u003chttps://www.youtube.com/watch?v=dmg7lYsj374\u0026list=PLUHwLCacitP4DU2v_DEHQI0U2tQg0a421\u003e\n\nNote: The inventory.yml file is not shared since that depends on the actual environment,\nso it will be different for everyone. If you want to learn more about the inventory file,\nwatch the videos on YouTube or read the written version on \u003chttps://dev.to\u003e. Links in\nthe video descriptions on YouTube.\n\nYou can also find an example inventory file in the project root. You can copy that and change\nthe content, so you will use your IP addresses and usernames.\n\n```bash\ncp inventory-example.yml inventory.yml\n```\n\nOptionally, if you want to start an SSH agent, run:\n\n```bash\nssh-agent $SHELL\n```\n\nIf you generated an SSH private key at `~/.ssh/ansible` it will be added automatically\nwhen you source the homelab env scripts. Otherwise, you need to run:\n\n```bash\nssh-add $PATH_OF_THE_SSH_PRIVATE_KEY\n```\n\nUse the actual path of the SSH private key instead of the variable.\n\nSince Ansible 8.0.0 requires a recent Python version, if you are on Ubuntu 22.04 for example you can install Nix and run the following command to create the Python environment using Python 3.11:\n\n```bash\n./create-nix-env.sh venv\n```\n\nor\n\n```bash\n./create-nix-env.sh venv-linux\n```\n\nIf you created a python virtual environment with the name \"venv\", you can activate it using\n\n```bash\nsource homelab-env.sh\n```\n\nOverride the `HOMELAB_ENV` variable to customize the environment:\n\n```bash\nHOMELAB_ENV=custom-env source homelab-env.sh\n```\n\nIf you want `venv-linux` on linux and `venv-darwin` on macOS, you can run\n\n```bash\nsource homelab-env-os.sh\n```\n\nRun any playbook:\n\n```bash\n./run.sh playbook-hello.yml\n```\n\nExisting playbooks:\n\n- **playbook-hello.yml**: Just a demo playbook for beginners to create a file.\n- **playbook-system-base.yml**: Installation of common tools on the hosts, including useful command line tools\n- **playbook-lxd-install.yml**: Installation of LXD to run virtual machines and containers.\n- **playbook-lxd-remove.yml**: Remove LXD\n- **playbook-lxd-docker-vm.yml**: Create and start a virtual machine and run Docker and Portainer in it.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frimelek%2Fhomelab","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frimelek%2Fhomelab","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frimelek%2Fhomelab/lists"}