<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki42.maceys.net/index.php?action=history&amp;feed=atom&amp;title=GeekCookbook</id>
	<title>GeekCookbook - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki42.maceys.net/index.php?action=history&amp;feed=atom&amp;title=GeekCookbook"/>
	<link rel="alternate" type="text/html" href="https://wiki42.maceys.net/index.php?title=GeekCookbook&amp;action=history"/>
	<updated>2026-04-14T06:00:42Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.44.3</generator>
	<entry>
		<id>https://wiki42.maceys.net/index.php?title=GeekCookbook&amp;diff=290&amp;oldid=prev</id>
		<title>Lynn: Created page with &quot;==GeekCookbook Premix== This is David Young&#039;s project. It is the first that I have found that starts with the infrastructure and build out to the actual applications. This is important for consistency. There is the generally available version that is a collection of recipes. The Premix version is kept more up to date and has deployment tools as part of the package.  Like many technical projects by technicians, it doesn&#039;t really start at the beginning. This is not merely...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki42.maceys.net/index.php?title=GeekCookbook&amp;diff=290&amp;oldid=prev"/>
		<updated>2026-01-24T23:58:32Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;==GeekCookbook Premix== This is David Young&amp;#039;s project. It is the first that I have found that starts with the infrastructure and build out to the actual applications. This is important for consistency. There is the generally available version that is a collection of recipes. The Premix version is kept more up to date and has deployment tools as part of the package.  Like many technical projects by technicians, it doesn&amp;#039;t really start at the beginning. This is not merely...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==GeekCookbook Premix==&lt;br /&gt;
This is David Young&amp;#039;s project. It is the first that I have found that starts with the infrastructure and build out to the actual applications. This is important for consistency. There is the generally available version that is a collection of recipes. The Premix version is kept more up to date and has deployment tools as part of the package.&lt;br /&gt;
&lt;br /&gt;
Like many technical projects by technicians, it doesn&amp;#039;t really start at the beginning. This is not merely techie vs novice. There is some tension between the truly technical who don&amp;#039;t need the basics and the non-technical that really need to be led along, there is also the case where a techy just has not encountered the tool, or environment. It is a little like starting a TV show 10 minutes in. Those familiar can figure it out but, it can be frustrating getting off of the ground. Somewhere he says that it is a five minute exercise... It may be true if you have a suitably prepped platform to work from.&lt;br /&gt;
&lt;br /&gt;
The project assumes some prerequisites:&lt;br /&gt;
&lt;br /&gt;
* [https://www.terraform.io/ Terraform]&lt;br /&gt;
* [https://github.com/Telmate/terraform-provider-proxmox Terraform proxmox provider]&lt;br /&gt;
* [https://docs.ansible.com/ansible/latest/index.html Ansible]&lt;br /&gt;
&lt;br /&gt;
This is all well and good but, most of us don&amp;#039;t have Ansible or Terraform just laying around in our daily driver. The Terraform Proxmox provider actually has to be built.&lt;br /&gt;
&lt;br /&gt;
==Terraform==&lt;br /&gt;
Terraform is a provisioning tool. &lt;br /&gt;
&lt;br /&gt;
===Installing Terraform===&lt;br /&gt;
Click on the Download link on the upper right of the home page It will take you to installation instructions. Since I am running on Ubuntu, I picked the Ubuntu/Debian option under the Linux header. After installation, I followed the link to view the tutorials. Under getting started, I picked docker and basically found what I needed. I did have to do a:&lt;br /&gt;
&lt;br /&gt;
 root@chico:~# snap install terraform --classic&lt;br /&gt;
&lt;br /&gt;
in order to get the tool into my path. If you are good to go, this:&lt;br /&gt;
&lt;br /&gt;
 root@chico:~# terraform --help &lt;br /&gt;
&lt;br /&gt;
should return a long list of commands and options.&lt;br /&gt;
&lt;br /&gt;
==Terraform proxmox provider==&lt;br /&gt;
&lt;br /&gt;
This is Terraform provider for the Proxmox platform that exposes Terraform resources in order to provision QEMU VMs and LCX containers. There is also a second tool, to build custom Ubunto ISOs to build the VMs from. It can be found here: [https://github.com/Telmate/terraform-ubuntu-proxmox-iso terraform-ubuntu-proxmox-iso].&lt;br /&gt;
&lt;br /&gt;
It is easiest to get the ISOs built first. It will download the versions that you want to work with, make some tweaks to it and then create a new ISO that you can use to build VMs from in ProxMox. &lt;br /&gt;
&lt;br /&gt;
Note that rsync version 3.2.3 distributed with a number of Ubuntu versions will throw errors attempting to change permissions on symbolic links. This will cause the script to fail and no iso will be created. Version 3.2.4 can be downloaded from [http://rsync.sambo.org rsync.sambo.org]. It will install in /usr/local/bin and with it, the script works as expected.      &lt;br /&gt;
&lt;br /&gt;
Clone the iso tool and make the following changes in bold:&lt;br /&gt;
&lt;br /&gt;
config.sh &lt;br /&gt;
 #&lt;br /&gt;
 &lt;br /&gt;
 # The nickname of this ISO, VirtualBox image, and Vagrant box.&lt;br /&gt;
 : ${NICKNAME:=&amp;quot;terraform&amp;quot;}&lt;br /&gt;
 &lt;br /&gt;
 # Arguments given to the download router.&lt;br /&gt;
 : ${VERSION:=&amp;quot;&amp;#039;&amp;#039;&amp;#039;18.04.6&amp;#039;&amp;#039;&amp;#039;&amp;quot;}&lt;br /&gt;
 : ${DISTRO:=&amp;quot;&amp;#039;&amp;#039;&amp;#039;live-serve&amp;#039;&amp;#039;&amp;#039;r&amp;quot;}&lt;br /&gt;
 : ${RELEASE:=&amp;quot;latest&amp;quot;}&lt;br /&gt;
 &lt;br /&gt;
 # Architecture being built (i386 or amd64).&lt;br /&gt;
 : ${ARCH:=&amp;quot;amd64&amp;quot;}&lt;br /&gt;
 &lt;br /&gt;
 # Hardcoded host information.&lt;br /&gt;
 : ${HOST:=&amp;quot;tfnode&amp;quot;}&lt;br /&gt;
 : ${DOMAIN:=&amp;quot;terraform.io&amp;quot;}&lt;br /&gt;
 : ${ROOT_PASSWORD:=`openssl rand -base64 24`}&lt;br /&gt;
 : ${USERNAME:=&amp;quot;terraform&amp;quot;}&lt;br /&gt;
 : ${PASSWORD:=`openssl rand -base64 24`}&lt;br /&gt;
&lt;br /&gt;
==Ansible==&lt;br /&gt;
This is an open source tool but the cookbook link takes you to the Red Hat Enterprise solution. This is not useful to move forward with getting started with the GeekCookbook. For most people, the starting point is the Installation Guide in the link above.&lt;br /&gt;
&lt;br /&gt;
===Install Ansible===&lt;br /&gt;
To be honest, I am not starting at the very beginning either. Since I plan to be using prebuilt playbooks, I will install the tool and move on.&lt;br /&gt;
&lt;br /&gt;
Ansible has a comprehensive installation guide here: [https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html Installing Ansible]. I skipped down to &amp;quot;Installing Ansible on Ubuntu&amp;quot;, pick your flavor and go. When completed, you can test your work with:&lt;br /&gt;
 &lt;br /&gt;
 root@chico:/# ansible --version&lt;br /&gt;
 ansible [core 2.12.6]&lt;br /&gt;
   config file = /etc/ansible/ansible.cfg&lt;br /&gt;
   configured module search path = [&amp;#039;/root/.ansible/plugins/modules&amp;#039;, &amp;#039;/usr/share/ansible/plugins/modules&amp;#039;]&lt;br /&gt;
   ansible python module location = /usr/lib/python3/dist-packages/ansible&lt;br /&gt;
   ansible collection location = /root/.ansible/collections:/usr/share/ansible/collections&lt;br /&gt;
   executable location = /usr/bin/ansible&lt;br /&gt;
   python version = 3.9.7 (default, Sep 10 2021, 14:59:43) [GCC 11.2.0]&lt;br /&gt;
   jinja version = 2.11.3&lt;br /&gt;
   libyaml = True&lt;br /&gt;
 root@chico:/#&lt;/div&gt;</summary>
		<author><name>Lynn</name></author>
	</entry>
</feed>