Personal infrastructure project written in Ansible
Go to file
2022-12-19 02:25:17 -05:00
dev Use host MariaDB in Gitea container 2022-08-11 21:04:07 -04:00
roles Option to enable websockets for the noVNC console 2022-12-06 00:15:10 -05:00
scratch Add shared folder for external project development 2021-07-16 18:48:46 -04:00
.gitignore Option to enable websockets for the noVNC console 2022-12-06 00:15:10 -05:00
ansible.cfg Add PostgreSQL server role 2022-05-26 23:49:06 -04:00
backup.yml Add Jenkins client to backup server 2021-09-11 01:54:33 -04:00
bitwarden.yml Run Jenkins agent playbook on Bitwarden host 2021-02-27 19:09:17 -05:00
docker.yml Add Jenkins client setup to plain Docker servers 2020-11-22 01:41:06 -05:00
dockerbox.yml Add Traefik toggles 2022-08-18 23:32:37 -04:00
hypervisor.yml Split Jenkins into agent and server tasks 2020-09-21 21:58:42 -04:00
Jenkinsfile Expand options to pass Ansible playbook 2021-04-22 21:47:40 -04:00
LICENSE Add license file 2020-06-30 21:01:05 -04:00
minecraft.yml Run Jenkins agent playbook on Minecraft hosts 2021-07-09 00:54:52 -04:00
proxy.yml Use host MariaDB in Gitea container 2022-08-11 21:04:07 -04:00
README.md testing 2022-12-19 02:25:17 -05:00
unifi.yml Add installation for UniFi Network Controller 2021-04-04 02:26:54 -04:00
update-hosts.sh Add installation for UniFi Network Controller 2021-04-04 02:26:54 -04:00
Vagrantfile Fix broken Bitwarden provision 2022-05-19 23:19:09 -04:00

Homelab

This repository contains Ansible to automate Debian GNU/Linux servers, deploying server technologies that are either useful in a personal capacity or provide educational value on automating enterprise infrastructure.

Development is accomplished using Vagrant to allow easy reproducibility in an isolated virtual environment that be ran on your local machine.

Quick Start

These steps assume a basic understanding of GNU/Linux, Hypervisors, Vagrant, and Ansible.

Prerequisites

Installation

  1. Clone this repository

    git clone https://git.krislamo.org/kris/homelab
    

    OR download from the mirror on GitHub:

    git clone https://github.com/krislamo/homelab
    
  2. Find available playbooks for development

    cd homelab
    
    find dev -maxdepth 1 -name "*.yml" -exec basename {} .yml \;
    
  3. Set the PLAYBOOK environmental variable to a value listed in the last step, e.g.,

    export PLAYBOOK=dockerbox
    
  4. Bring the Vagrant box up

    vagrant up
    

Copyright (C) 2020-2022 Kris Lamoureux

License: GPL v3

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.