# Installing the Project ``` cd /opt sudo git clone https://gitlab.com/Snogard/kaido ``` Then in your .zshrc or .bashrc ``` alias kaido="/opt/kaido/kaido.sh" ``` # Configuration every configuration must be under /etc/kaido. (to implement): if "/etc/kaido/" is a git repository, the update function will also take that into account when deciding what container to recreate ### Folder structure - /etc/kaido - build (holds container build data) - containerName - Dockerfile - data.txt - ecc... - commands (holds additional or substitute commands) - install - install-transmission.sh - install-pihole.sh - ecc... - config - ecc... - containers (holds container configuration) - container1 - config - secrets - envs.sh - container2 - ecc... - system (holds system configuration) - samba - ecc... - user (holds user configuration, not implemented) - update.conf - envs.sh ### /etc/kaido/update.conf this file contains the definitions of what must be installed/configured/built when using the "kaido update" command example file ``` install-youtubedl configure-reverse-proxy-server build-mongodb ``` regardless of the order in the file, the execution is in this order: 1. build 1. install 2. configure warning: No parameters are supported yet ### /etc/kaido/envs.sh This file will be sourced to overrwrite default envs KAIDO_CONTAINER_FOLDER: where container folders are created by default KAIDO_BUILD_FOLDER: where files are downloaded for build purposes KAIDO_CONFIG_FOLDER: where kaido will look for a kaido-config repository # Container Installation: ### gitlab-runner first time: ``` kaido install gitlab-runner register "insert_token_here" ``` other times: ``` kaido install gitlab-runner ``` # Container Build ### foundry - first setup a private repository properly tagged for each foundry version you intend to build - set the link to your repository inside your config