{"id":37634051,"url":"https://github.com/juanje/lxc-builder","last_synced_at":"2026-01-16T11:00:59.791Z","repository":{"id":4897886,"uuid":"6053853","full_name":"juanje/lxc-builder","owner":"juanje","description":"A LXC template with Chef cookbooks to create a development enviroment for Aentos projects","archived":false,"fork":false,"pushed_at":"2012-11-30T07:43:17.000Z","size":515,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2023-04-12T13:02:26.545Z","etag":null,"topics":["bash","bootstrap","chef","lxc","lxc-container","provision","shunit2"],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"kofron/trigger_loadtest.go","license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/juanje.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}},"created_at":"2012-10-03T00:58:57.000Z","updated_at":"2023-01-05T21:07:53.000Z","dependencies_parsed_at":"2022-09-10T03:53:19.692Z","dependency_job_id":null,"html_url":"https://github.com/juanje/lxc-builder","commit_stats":null,"previous_names":[],"tags_count":0,"template":null,"template_full_name":null,"purl":"pkg:github/juanje/lxc-builder","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juanje%2Flxc-builder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juanje%2Flxc-builder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juanje%2Flxc-builder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juanje%2Flxc-builder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/juanje","download_url":"https://codeload.github.com/juanje/lxc-builder/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juanje%2Flxc-builder/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28478106,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T06:30:42.265Z","status":"ssl_error","status_checked_at":"2026-01-16T06:30:16.248Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["bash","bootstrap","chef","lxc","lxc-container","provision","shunit2"],"created_at":"2026-01-16T11:00:59.280Z","updated_at":"2026-01-16T11:00:59.786Z","avatar_url":"https://github.com/juanje.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"Description\n===========\n\nThis is a set of scripts to build a LXC container and prepare it to be provisioned by `chef-solo`.\n\nThis is meant to work with Debain and Ubuntu containers to be bootstraped with Chef. It also comes with a list of cookbooks to be used by the container in order to bootstrap an Rails project by any of the Aentos developers.\n\n\nInstall\n=======\n\nTo install the scripts you need to have installed in a Ubuntu/Debian box with the following dependencies:\n\n* `lxc`\n* `make`\n\nNow you need to run:\n\n```\n$ sudo make\n```\n\nIt will install the scripts to `/usr/local/bin/`.\n\nNOTE: It's important to run the `make` with `sudo` or as a root user.\n\nYou also can especify the `DESTDIR` and the `prefix` variables to the `make` command:\n\n```\n$ make DESTDIR=~ prefix=\n```\n\nIt will install the scripts to `/home/$USER/bin`.\n\n\nUsage\n=====\n\nFirst you need to run the `sudo rake`. Then you can create a LXC container with `lxc-build-project`:\n\n```\n$ sudo lxc-build-project -n \u003ccontainer-name\u003e [-u|--distro \u003cusername\u003e] [-D|--distro \u003cdistro\u003e] [-- \u003ctemplate params\u003e]\n```\n\nObviously, the `\u003ccontainer-name\u003e` you choose will be the one use to refer to the container. This parameter must be provider.\nThe `\u003cusername\u003e` is the name of the user you want to be created inside the container to manage it. It's optional but highly recommended to be provided.\nIf you are going to use the boostrap cookbook, **it's very important that the user you choose be the same in both cases** (the container and the cookbook). See the cookbook's attributes for more info.\n\nThe `\u003cdistro\u003e` could be either `debian` or `ubuntu`. The default option is `debian`.\n\nTo create a LXC project it's enough to run (being `superproject` the name of the new project):\n\n```\n$ sudo lxc-build-project -n superproject\n```\n\nYou can also pass some parameters to the `lxc-create` after `--`, like the IP the container should have:\n\n```\n$ sudo lxc-build-project -n superproject -- -i 10.0.3.51 -B lvm\n```\n\nAfter you create the container you need to provision it by doing:\n\n```\n$ sudo lxc-provision -n superproject -b /mnt/disk1/code/Berksfile\n```\n\nYou will need a `Berksfile` file with the cookbooks for the project you want to bootstrap. A example is provider in this repo.\nTo know more about the `Berksfile`'s format please visit [the Berkshelf's site](http://berkshelf.com).\n\nYou also can use `lxc-console` or normal ssh connection to work inside the container. To connect via ssh with the container without password you can use a private key copied to `/var/cache/lxc/id_project_[container-name]` for this purpose.\nThere is also a handy command `lxc-ssh` which do the job. Here is how you can use it:\n\n```\n$ lxc-ssh -n superproject\n```\n\nIn case you need it, the password for the `ubuntu` user is `ubuntu`.\n\n\nLicense and Author\n==================\n\nAuthor:: Juanje Ojeda (\u003cjuanje.ojeda@gmail.com\u003e)\n\nCopyright:: 2012, Aentos\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuanje%2Flxc-builder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjuanje%2Flxc-builder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuanje%2Flxc-builder/lists"}