vagrant-lxc-base-boxes/README.md

75 lines
2.2 KiB
Markdown
Raw Normal View History

2014-03-25 03:26:19 +00:00
# vagrant-lxc base boxes
This repository contains a set of scripts for creating base boxes for usage with
2018-07-24 14:04:50 +00:00
[vagrant-lxc](https://github.com/fgrehm/vagrant-lxc) 1.4+.
2014-03-25 03:26:19 +00:00
## What distros / versions can I build with this?
* Ubuntu
2016-03-12 20:01:32 +00:00
- Xenial 16.04 x86_64
2014-03-25 03:26:19 +00:00
* Debian
2016-06-27 12:07:22 +00:00
- Stretch x86_64
2014-03-27 22:31:06 +00:00
- Sid x86_64
* Fedora
- 23 x86_64
- rawhide x86_64
2014-09-24 15:51:10 +00:00
* CentOS
2016-08-15 02:43:55 +00:00
- 7 x86_64
2014-03-25 03:26:19 +00:00
2018-07-24 14:04:50 +00:00
## Status
This is a fork of `obnoxxx/vagrant-lxc-base-boxes` which itself was a fork for
`fgrehm/vagrant-lxc-base-boxes`. The goal is to make LXC box generation work for LXC 3.0+. The
repo is not in top shape, but it works `make stretch` (which is what I use myself).
It should be easy enough for you to add support for distros you use (PR welcome).
2014-03-25 03:26:19 +00:00
## Building the boxes
2014-03-27 13:14:13 +00:00
_In order to build the boxes you need to have the `lxc-download`
template available on your machine. If you don't have one around please
create one based on [this](https://github.com/lxc/lxc/blob/master/templates/lxc-download.in)
2014-03-27 13:14:13 +00:00
and drop it on your lxc templates path (usually `/usr/share/lxc/templates`)._
2014-03-25 03:26:19 +00:00
```sh
2018-07-24 14:04:50 +00:00
git clone https://github.com/hsoft/vagrant-lxc-base-boxes.git
2014-03-25 03:26:19 +00:00
cd vagrant-lxc-base-boxes
2018-07-24 14:04:50 +00:00
make stretch
2014-03-25 03:26:19 +00:00
```
By default no provisioning tools will be included but you can pick the ones
you want by providing some environmental variables. For example:
```sh
2018-07-24 14:04:50 +00:00
ANSIBLE=1 PUPPET=1 CHEF=1 \
make stretch
2014-03-25 03:26:19 +00:00
```
2018-07-24 14:04:50 +00:00
Will build a Debian Stretch x86_64 box with latest Ansible, Puppet and Chef pre-installed.
2014-03-25 03:26:19 +00:00
2018-07-24 14:04:50 +00:00
When using ANSIBLE=1, an optional ANSIBLE_VERSION parameter may be passed that
will specify which version of ansible to install. By default it will install
the latest Ansible.
2014-03-25 03:26:19 +00:00
Additional packages to be installed can be specified with the ADDPACKAGES variable:
2015-12-27 15:34:32 +00:00
```sh
ADDPACKAGES="aptitude htop" \
2018-07-24 14:04:50 +00:00
make xenial
2015-12-27 15:34:32 +00:00
```
2018-07-24 14:04:50 +00:00
Will build a Ubuntu Xenial x86_64 box with aptitude and htop as additional
2015-12-27 15:34:32 +00:00
packages pre-installed. You can also specify the packages in a file
2018-07-24 14:04:50 +00:00
xenial_packages.
2015-12-27 15:34:32 +00:00
Note: ADDPACKAGES is currently only implemented for flavors of debian.
2014-03-25 03:26:19 +00:00
## Pre built base boxes
2018-07-24 14:04:50 +00:00
There are no pre-built base boxes for this repo. You have to build them yourself.
2014-03-25 03:26:19 +00:00
## What makes up for a vagrant-lxc base box?
See [vagrant-lxc/BOXES.md](https://github.com/fgrehm/vagrant-lxc/blob/master/BOXES.md)