{"id":21300146,"url":"https://github.com/carlosefr/vagrant-templates","last_synced_at":"2025-07-11T19:31:03.613Z","repository":{"id":75755102,"uuid":"80573138","full_name":"carlosefr/vagrant-templates","owner":"carlosefr","description":"Vagrantfiles for self-contained development/test environments.","archived":false,"fork":false,"pushed_at":"2024-04-29T00:08:25.000Z","size":261,"stargazers_count":33,"open_issues_count":0,"forks_count":16,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-04-29T01:27:17.952Z","etag":null,"topics":["almalinux","centos","debian","fedora","freebsd","kali-linux","rockylinux","ubuntu","vagrant","virtualbox"],"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/carlosefr.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2017-01-31T23:31:26.000Z","updated_at":"2024-04-29T01:27:20.456Z","dependencies_parsed_at":"2024-04-15T18:56:04.104Z","dependency_job_id":null,"html_url":"https://github.com/carlosefr/vagrant-templates","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carlosefr%2Fvagrant-templates","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carlosefr%2Fvagrant-templates/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carlosefr%2Fvagrant-templates/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/carlosefr%2Fvagrant-templates/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/carlosefr","download_url":"https://codeload.github.com/carlosefr/vagrant-templates/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225750111,"owners_count":17518315,"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":["almalinux","centos","debian","fedora","freebsd","kali-linux","rockylinux","ubuntu","vagrant","virtualbox"],"created_at":"2024-11-21T15:07:50.325Z","updated_at":"2024-11-21T15:07:51.107Z","avatar_url":"https://github.com/carlosefr.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Vagrant Templates\n\nThe point of this repository is to hold `Vagrantfile` templates that I personally use as starting points for self-contained development/testing environments.\n\nThese are not minimal templates. They include configuration tweaks, **workarounds** for common issues that I bumped into, and provisioning scripts that install a few extra packages and customize the shell environment a bit. Check the appropriate `Vagrantfile` and the `vagrant/provision.sh` script, they should be fairly easy to modify. Some usage examples:\n\n  * Use them _as is_ to spin up readily usable VMs where you can log into and test random stuff.\n  * Add the necessary steps to provision your application inside the VM, maybe removing some redundant things.\n  * Just use them as a reference to write your own minimal environments with tweaked settings.\n\nMost of these templates default to [bento](http://chef.github.io/bento/)-based boxes for convenience (i.e. pre-installed guest additions).\n\n## Dependencies\n\nYou'll need [VirtualBox](https://www.virtualbox.org/) and [Vagrant](https://www.vagrantup.com/). Some templates may ask to install the `vagrant-vbguest` plugin (to share folders with the host) on `vagrant up` if they need it.\n\n### Host-Only Networking\n\nStarting with version 6.1.28, VirtualBox restricts the address ranges usable in [host-only networks](https://www.virtualbox.org/manual/ch06.html#network_hostonly) which causes `vagrant up` to fail as it tries to create an host-only network using a disallowed address range. This requires manual intervention in VirtualBox before the first ever `vagrant up` on the host:\n\nOn **unix-like hosts**, go to `File -\u003e Host Network Manager` and create the `vboxnet0` network if it doesn't already exist, also making sure it has the DHCP server enabled (default).\n\nOn **Windows hosts** go to `File -\u003e Tools -\u003e Network Manager`, select the `Host-only Networks` tab and remove the existing \"VirtualBox Host-Only Ethernet Adapter\" entry. It will be automatically recreated with the necessary settings on `vagrant up`.\n\n### Local Customization\n\nThe default VM size is defined in the `Vagrantfile` but, sometimes, it's useful to locally override these settings without affecting other users of the same repo. Do this by creating a `.vagrant_size.json` next to the `Vagrantfile` with the following (example) contents:\n\n```json\n{\n    \"cpus\": 2,\n    \"memory\": 4096\n}\n```\n\n### Guest Additions\n\nBy default, the `vagrant-vbguest` plugin tries to install/update the VirtualBox Guest Additions on every `vagrant up`. I find this annoying and recommend you to disable this behavior by adding something like the following to your `~/.vagrant.d/Vagrantfile`:\n\n```ruby\nVagrant.configure(2) do |config|\n    ...\n\n    if Vagrant.has_plugin?(\"vagrant-vbguest\")\n        config.vbguest.auto_update = false\n        config.vbguest.allow_downgrade = false\n    end\n\n    ...\nend\n```\n\nThe templates that need to install/update the VirtualBox Guest Additions already (re)enable `auto_update` explicitly.\n\n### Clock Drift\n\nOn older machines, the (VM) clocks may drift quite significantly with paravirtualization enabled. This is unlikely to happen nowadays but, if it does, add the following to your `~/.vagrant.d/Vagrantfile`:\n\n```ruby\nVagrant.configure(2) do |config|\n    ...\n\n    config.vm.provider \"virtualbox\" do |v, override|\n        v.customize [\"modifyvm\", :id, \"--paravirtprovider\", \"legacy\"]\n    end\n\n    ...\nend\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcarlosefr%2Fvagrant-templates","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcarlosefr%2Fvagrant-templates","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcarlosefr%2Fvagrant-templates/lists"}