Update README.md
This commit is contained in:
parent
fbd823adba
commit
35bb72fc00
1 changed files with 80 additions and 1 deletions
81
README.md
81
README.md
|
@ -1 +1,80 @@
|
||||||
Readme
|
# Proxmox Debian VM Bootstrap Wizard
|
||||||
|
|
||||||
|
A simple, interactive bootstrap for freshly cloned Debian VMs on Proxmox.
|
||||||
|
It uses a two‑stage approach:
|
||||||
|
|
||||||
|
1. **Bootstrap script** (stored as `setup.sh` on your VM template)
|
||||||
|
- Prompts for root if needed
|
||||||
|
- Downloads and runs the latest interactive wizard
|
||||||
|
2. **Remote setup wizard** (pulled from Git)
|
||||||
|
- Menu‑driven (`whiptail`) configuration: updates, sudo, hostname, SSH keys, aliases, neofetch, CIFS mounts, etc.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Prerequisites
|
||||||
|
|
||||||
|
- Debian‑based VM template
|
||||||
|
- Network access to `git.jordanwages.com`
|
||||||
|
- `whiptail` (auto‑installed if missing)
|
||||||
|
- Either `curl` or `wget`
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
1. **Copy & rename**
|
||||||
|
On your Debian template, place the **bootstrap** script as `/root/setup.sh`:
|
||||||
|
```bash
|
||||||
|
chmod +x /root/setup.sh
|
||||||
|
|
||||||
|
2. **Provision a new VM**
|
||||||
|
Clone from your template and boot it. Then run:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo /root/setup.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
* If you’re not root, you’ll be prompted (via `whiptail`) for the root password.
|
||||||
|
* The script fetches and executes the latest remote wizard.
|
||||||
|
|
||||||
|
3. **Follow the wizard**
|
||||||
|
Use the on‑screen menus to:
|
||||||
|
|
||||||
|
* Grant passwordless `sudo` to selected users
|
||||||
|
* Apply system updates
|
||||||
|
* Set a new hostname
|
||||||
|
* Add SSH keys for root & your primary user
|
||||||
|
* Install core & optional utilities (`htop`, `jq`, `git`, etc.)
|
||||||
|
* Configure CIFS mounts for your NAS shares
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Customization
|
||||||
|
|
||||||
|
* **Default SSH key**
|
||||||
|
Edit the `DEFAULT_SSH_KEY` variable in the remote `setup.sh` to your own public key.
|
||||||
|
|
||||||
|
* **Optional packages**
|
||||||
|
Tweak the `TOOLS=(…)` array in the remote script to add or remove utilities.
|
||||||
|
|
||||||
|
* **CIFS shares**
|
||||||
|
Adjust the `CIFS_HOSTS=(…)` array to match your NAS hostnames.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Troubleshooting
|
||||||
|
|
||||||
|
* **Fetch failures**
|
||||||
|
Ensure network connectivity and that `curl` or `wget` is installed.
|
||||||
|
|
||||||
|
* **Rerunning**
|
||||||
|
Simply invoke:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo /root/setup.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
again to repeat the wizard.
|
||||||
|
|
||||||
|
* **Manually inspect**
|
||||||
|
If a step errors out, inspect the console output for hints.
|
||||||
|
|
Loading…
Reference in a new issue