6b841fee7c
Only 2 main Vagrant calls are now needed (`vagrant up` and `vagrant up machine1`). This PR only updates the Vagrant Virtualbox setup. The Vagrant Libvirt and Terraform still need to be updated. This uses docker-compose as the entry point for standing up the stack and makes the stand-up of the sandbox more portal. Vagrant and Terraform are only responsible for standing up infrastructure and then running docker-compose, not for running any glue scripts. The docker-compose calls out to single-shot services to do all the glue required to get the fully functional Tinkerbell stack up and running. All the single-shot services are idempotent. This increases portability and the development iteration loop. This also simplifies the required steps needed to get a fully functioning sandbox up and running. This is intended to help people looking to get started by getting them to a provisioned machine quicker and more easily. Signed-off-by: Jacob Weinstock <jakobweinstock@gmail.com>
43 lines
987 B
YAML
43 lines
987 B
YAML
#cloud-config
|
|
|
|
package_update: true
|
|
package_reboot_if_required: true
|
|
|
|
apt:
|
|
sources:
|
|
docker.list:
|
|
source: deb [arch=amd64] https://download.docker.com/linux/ubuntu $RELEASE stable
|
|
keyid: 9DC858229FC7DD38854AE2D88D81803C0EBFCD88
|
|
|
|
packages:
|
|
- make
|
|
- apt-transport-https
|
|
- ca-certificates
|
|
- curl
|
|
- gnupg-agent
|
|
- gnupg2
|
|
- software-properties-common
|
|
- docker-ce
|
|
- docker-ce-cli
|
|
- containerd.io
|
|
|
|
write_files:
|
|
- path: /etc/netplan/60-cloud-init.yaml
|
|
content: |
|
|
network:
|
|
version: 2
|
|
renderer: networkd
|
|
ethernets:
|
|
enp0s8:
|
|
dhcp4: no
|
|
addresses:
|
|
- 192.168.2.111/24
|
|
nameservers:
|
|
addresses: [1.1.1.1, 8.8.8.8]
|
|
|
|
runcmd:
|
|
- usermod -aG docker ubuntu
|
|
- curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
|
|
- chmod +x /usr/local/bin/docker-compose
|
|
- netplan apply
|