# LXC 101 - Minecraft (Crafty Controller) **Director:** `proxmox/lxc101-minecraft/` **VMID:** 101 **IP:** 10.0.20.162 (intern) **Host Proxmox:** pve1 (10.0.20.200) **Rol:** Servere Minecraft (Java + Bedrock) gestionate prin Crafty Controller 4 --- ## Informații Container | Parametru | Valoare | |-----------|---------| | VMID | 101 | | Hostname | minecraft | | IP intern | 10.0.20.162 | | Host Proxmox | pve1 (10.0.20.200) | | Storage | local-zfs (100GB) | | RAM | 8GB | | CPU | 4 cores | | OS | Debian 12 (bookworm) | | onboot | da | ## Componente Instalate - **Crafty Controller 4.5.5** — panou web de management Minecraft (`crafty.service`) - WorkingDir: `/var/opt/minecraft/crafty` - User serviciu: `crafty` - Web UI: `https://10.0.20.162:8443` - **Java (Eclipse Temurin)**, instalat din repo Adoptium: | Versiune | Cale | Folosit pentru | |----------|------|----------------| | OpenJDK 17 | `/usr/lib/jvm/java-17-openjdk-amd64` | legacy | | Temurin 21 | `/usr/lib/jvm/temurin-21-jdk-amd64` | Minecraft 1.21.x clasic | | Temurin 25 (LTS) | `/usr/lib/jvm/temurin-25-jdk-amd64` | **Minecraft nou (necesită Java 25+)** | - **playit** — tunel pentru expunere publică (`/opt/playit`) ## Servere Configurate (în Crafty) | Server | Tip | Java | Director | |--------|-----|------|----------| | **Marius** | Paper (Java Edition) | Temurin 25 | `crafty-4/servers/b1dcdf7f-...` | | **Mihai Bedrock** | Bedrock | n/a (`./bedrock_server`) | `crafty-4/servers/56c76527-...` | > Crafty își ține serverele în `/var/opt/minecraft/crafty/crafty-4/servers//`. > Directoarele `/opt/fabric` și `/opt/paper` sunt instalări vechi/manuale, **nu** sunt cele gestionate de Crafty. --- ## Cum actualizezi versiunea de Minecraft Minecraft urcă periodic cerința minimă de Java (ex. versiunile noi „Copper Age" cer **Java 25+**). Procesul are două părți: (1) ai Java necesară instalată, (2) actualizezi jar-ul și pui serverul pe Java corectă. ### Pas 1 — Verifică / instalează versiunea de Java necesară Repo-ul Adoptium e deja configurat. Lista versiunilor disponibile: ```bash ssh root@10.0.20.200 "pct exec 101 -- bash -c 'apt-get update -qq; apt-cache search temurin | grep jdk'" ``` Instalează versiunea cerută (exemplu Java 25 LTS — recomandat față de non-LTS 26): ```bash ssh root@10.0.20.200 "pct exec 101 -- bash -c 'DEBIAN_FRONTEND=noninteractive apt-get install -y temurin-25-jdk'" # Verificare ssh root@10.0.20.200 "pct exec 101 -- /usr/lib/jvm/temurin-25-jdk-amd64/bin/java -version" ``` > ⚠️ La instalare, `update-alternatives` poate muta `java` default pe versiunea nouă. > Nu e o problemă: fiecare server din Crafty pornește cu **calea completă** spre Java (vezi mai jos), > deci serverele existente NU sunt afectate de schimbarea default-ului. ### Pas 2 — Actualizează serverul în Crafty (`https://10.0.20.162:8443`) 1. **Oprește** serverul. 2. **Înlocuiește jar-ul** cu build-ul nou (ex. Paper pentru versiunea dorită) — prin upload sau funcția de update din Crafty. Numele rămâne `paper.jar`. 3. Deschide serverul → tab **Config** → câmpul **Server Execution Command** și schimbă **doar calea de Java** spre versiunea nouă: ``` "/usr/lib/jvm/temurin-25-jdk-amd64/bin/java" -Xms4096M -Xmx8192M -jar paper.jar nogui ``` (păstrezi restul argumentelor; modifici doar `temurin-21` → `temurin-25`) 4. **Salvează** și **pornește** serverul. ### Verificare din linia de comandă (opțional) Comenzile de execuție per server sunt în baza de date Crafty: ```bash ssh root@10.0.20.200 "pct exec 101 -- bash -c ' PY=/var/opt/minecraft/crafty/crafty-4/.venv/bin/python \$PY -c \"import sqlite3; c=sqlite3.connect(\\\"/var/opt/minecraft/crafty/crafty-4/app/config/db/crafty.sqlite\\\"); [print(n,\\\"=>\\\",e) for n,e in c.execute(\\\"SELECT server_name, execution_command FROM servers\\\")]\" '" ``` > Editarea comenzii se face din interfața Crafty, NU direct în SQLite (baza rulează cu WAL; > modificările manuale necesită oprirea serviciului `crafty` și pot fi suprascrise). --- ## Comenzi utile ```bash # Status / restart Crafty ssh root@10.0.20.200 "pct exec 101 -- systemctl status crafty" ssh root@10.0.20.200 "pct exec 101 -- systemctl restart crafty" # Versiunile de Java instalate ssh root@10.0.20.200 "pct exec 101 -- ls /usr/lib/jvm/" # Versiunea de Crafty ssh root@10.0.20.200 "pct exec 101 -- cat /var/opt/minecraft/crafty/crafty-4/app/config/version.json" ``` --- ## Istoric - **2026-06-29** — Instalat Temurin 25 JDK (LTS) pentru a rula versiunea nouă de Minecraft pe serverul „Marius" (cerea Java 25+). Comanda de execuție mutată de pe Temurin 21 pe Temurin 25.