unlabored is designed to streamline the deployment and maintenance of blockchain infrastructures on Proxmox using Ansible. The project comes with an array of roles, catering to various blockchain applications and Proxmox configurations.
-
Fork the Repository:
- First, visit the original repository on GitHub at
https://github.com/rotkonetworks/unlabored
. - In the top-right corner, you'll see a button labeled "Fork". Click on this to create your own copy of the repository.
- First, visit the original repository on GitHub at
-
Install Necessary Dependencies: Open a terminal and run the following commands to install necessary software:
bash sudo apt update sudo apt install python3 python3-venv python3-pip
-
Clone Your Forked Repository: Replace
<your_github_username>
with your actual GitHub username.bash git clone https://github.com/<your_github_username>/unlabored && cd unlabored
-
Install the Unlabored Application: Run the installation script. Make sure to replace
<command>
,<account_name>
, and<ssh_key_path>
with the appropriate values../install_unlabored <command> -a <account_name> -k <ssh_key_path>
The <command>
can be:
install
: It sets up a Python virtual environment, installs necessary Python packages fromrequirements.txt
andrequirements-dev.txt
, Ansible roles fromrequirements.yaml
, and a tool from a specific GitHub repository.setup-ssh
: It validates the existence of the SSH key, creates a directory for SSH configurations, exports necessary environment variables and invokes a command to update the SSH configuration.ssh-agent
: It exports a variable for the SSH agent and sets up the SSH agent service.all
: It performs all the above steps sequentially (install, setup, ssh-agent).
Please replace <account_name>
and <ssh_key_path>
with your username and the
path to your SSH private key, respectively.
For instance:
./install_unlabored install -a root -k ~/.ssh/ansible_ssh_key
To set up a shortcut and virtual environment, add the following alias to your bashrc or zshrc:
alias unlabored='cd /path/to/unlabored && source ../.venv/bin/activate'
This alias will allow you to quickly navigate to the correct directory and activate the virtual environment.
inv sshconfig
This will invoke your SSH configs to include any changes that have been made to the repository.
inv check
inv ansiblelater
inv ansiblelint
- Hardware Preparation - A guide on how to prepare the hardware for the setup process.
- Proxmox Maintenance - Instructions for managing and maintaining Proxmox servers and environments.
- Networking - Thinking networking and firewall solutions
- Playbooks - An overview of the Ansible playbooks used for various tasks and how to execute them.
- Data Sync - A tutorial on synchronizing data between servers using
rsync
andscreen
commands. - Rotko Networks Infrastructure - Overall docs for infrastructure this script is design to run for.