📝 docs: Pridanie PROJECT.md — prehľad projektu
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
71
PROJECT.md
Normal file
71
PROJECT.md
Normal file
@@ -0,0 +1,71 @@
|
||||
---
|
||||
name: Ubuntu LXC projekt - prehľad
|
||||
description: Vlastné Proxmox LXC skripty pre Ubuntu 24.04 s automatickým provisioningom užívateľov, Claude Code a SSH hardening
|
||||
type: project
|
||||
---
|
||||
|
||||
## Repozitár
|
||||
- **Git:** https://git.inbox.sk/proxmox/Ubuntu24_LXC.git
|
||||
- **SSH push:** git@sshgit.inbox.sk:proxmox/Ubuntu24_LXC.git
|
||||
- **Gitea:** beží na TrueNAS, `REQUIRE_SIGNIN_VIEW = false` v `/etc/gitea/app.ini`
|
||||
|
||||
## Spustenie na Proxmoxe
|
||||
```bash
|
||||
bash -c "$(curl -fsSL https://git.inbox.sk/proxmox/Ubuntu24_LXC/raw/branch/main/ct/ubuntu.sh)"
|
||||
```
|
||||
|
||||
## Štruktúra projektu
|
||||
```
|
||||
Ubuntu24_LXC/
|
||||
├── ct/
|
||||
│ ├── ubuntu.sh # Hlavný skript (beží na Proxmox hoste)
|
||||
│ └── headers/ubuntu # ASCII art header
|
||||
├── install/
|
||||
│ └── ubuntu-install.sh # Inštalačný skript (beží VNÚTRI kontajnera)
|
||||
├── config/
|
||||
│ ├── users.json # Databáza užívateľov + SSH kľúčov
|
||||
│ ├── claude-setup.md # Inštrukcie pre Claude Code (dostavba prostredia)
|
||||
│ └── setup.sh # Spúšťač: superclaude -p "$(cat ~/claude-setup.md)"
|
||||
└── misc/
|
||||
├── build.func # Vytvorenie kontajnera (z community-scripts)
|
||||
├── core.func # Utility — farby, formátovanie, msg_*
|
||||
├── install.func # Inštalačné funkcie pre kontajner
|
||||
├── error_handler.func # Error handling + signály
|
||||
├── tools.func # Package management helpers
|
||||
├── api.func # Telemetria (opt-in)
|
||||
└── images/logo-81x112.png # Logo pre popis kontajnera
|
||||
```
|
||||
|
||||
## Inštalačný wizard (ct/ubuntu.sh)
|
||||
1. **Hostname** — default `ubuntu`
|
||||
2. **IP + gateway** — statická alebo DHCP
|
||||
3. **DNS** — default `8.8.8.8 1.1.1.1`
|
||||
4. **Disk / RAM / CPU** — default 32 GB, 4 GB, 4 jadrá
|
||||
5. **Výber užívateľov** — whiptail checkbox z `config/users.json`
|
||||
6. **Potvrdenie** — súhrn + áno/nie
|
||||
|
||||
## Čo sa deje vnútri kontajnera (ubuntu-install.sh)
|
||||
1. Aktualizácia OS
|
||||
2. Inštalácia balíčkov: `mc`, `wget`, `git`, `curl`, `openssh-server`
|
||||
3. Pre každého vybraného užívateľa:
|
||||
- Vytvorí účet s náhodným heslom
|
||||
- Nasadí SSH kľúče z `users.json`
|
||||
- Pridá do sudo `NOPASSWD: ALL`
|
||||
- Nainštaluje Claude Code (`curl -fsSL https://claude.ai/install.sh | bash`)
|
||||
- Pridá `~/.local/bin` do PATH
|
||||
- Pridá alias `superclaude='claude --dangerously-skip-permissions'`
|
||||
- Skopíruje `claude-setup.md` a `setup.sh` do home
|
||||
4. SSH hardening: `PermitRootLogin no`, `PasswordAuthentication no`
|
||||
5. MOTD, cleanup
|
||||
|
||||
## Po prihlásení užívateľa
|
||||
1. `claude` → interaktívny login (API kľúč)
|
||||
2. `./setup.sh` → Claude automaticky dostaví prostredie (Node.js, Chromium, MCP)
|
||||
3. Alebo `superclaude` pre ručnú prácu
|
||||
|
||||
## Dôležité poznámky
|
||||
- Všetky URL smerujú na `git.inbox.sk` (nie community-scripts GitHub)
|
||||
- Parsovanie `users.json` je bez `jq` (grep/sed) — Proxmox host nemá jq
|
||||
- Vnútri kontajnera je `jq` dostupný (inštaluje sa cez build.func)
|
||||
- Ubuntu šablóna sa sťahuje z oficiálnych Proxmox zdrojov (bez zmeny)
|
||||
- `misc/` súbory sú fork z community-scripts/ProxmoxVE
|
||||
Reference in New Issue
Block a user