5 Commits

Author SHA1 Message Date
xosna 1308f016f2 docker-lxc.sh aktualisiert 2026-05-24 09:45:02 +02:00
xosna d80865fe87 docker-lxc.sh aktualisiert 2026-05-24 09:38:21 +02:00
xosna f2e75fcca9 Readme.md aktualisiert 2026-05-24 09:37:33 +02:00
xosna b1e18c0a43 docker-lxc.sh aktualisiert 2026-05-24 09:22:47 +02:00
xosna abd939d760 docker-lxc.sh aktualisiert
Hinzugefügt wurden anklickbare Links in der Übersicht von Proxmox bei den Hinweisen.
2026-05-24 09:14:45 +02:00
2 changed files with 79 additions and 11 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
## Hier eine kurze Übersicht:
## Debian + Docker + Portainer:
Aufruf auf dem PVE-Host (als root):
Entweder direkt nach dem Upload auf einen Webserver:
```
+77 -9
View File
@@ -338,6 +338,58 @@ docker run -d \
success "Portainer CE gestartet."
fi
# ── Proxmox Hinweise-Panel setzen (Markdown) ──────────────────────────────────
info "Setze Proxmox-Hinweise (Notes) für Container $CTID"
# IP ermitteln
sleep 2
NOTES_IP=$(pct exec "$CTID" -- hostname -I 2>/dev/null | awk '{print $1}' || echo "")
[[ -z "$NOTES_IP" ]] && NOTES_IP="n/a (DHCP bitte in Konsole prüfen)"
# Portainer-URL
if $INSTALL_PORTAINER; then
PORTAINER_URL="https://${NOTES_IP}:${PORTAINER_PORT}"
fi
# SSH-Befehl
if $ENABLE_ROOT_SSH; then
if [[ "$SSH_PORT" == "22" ]]; then
SSH_LINE="ssh root@${NOTES_IP}"
else
SSH_LINE="ssh root@${NOTES_IP} -p ${SSH_PORT}"
fi
fi
# Proxmox rendert --description als Markdown (kein HTML, kein SVG).
# Bilder via externer URL: shields.io badges als Logos funktioniert zuverlässig.
# Format: [![Alt](img-url)](link-url)
NOTE="[![Debian](https://img.shields.io/badge/Debian-A81D33?style=for-the-badge&logo=debian&logoColor=white)](https://www.debian.org)"
NOTE+=" "
NOTE+="[![Docker](https://img.shields.io/badge/Docker-2496ED?style=for-the-badge&logo=docker&logoColor=white)](https://www.docker.com)"
NOTE+=$'\n\n'
NOTE+="---"$'\n\n'
NOTE+="**🌐 IP-Adresse:** \`${NOTES_IP}\`"$'\n\n'
if $INSTALL_PORTAINER; then
NOTE+="**🐳 Portainer:** [${PORTAINER_URL}](${PORTAINER_URL})"$'\n\n'
fi
if $ENABLE_ROOT_SSH; then
NOTE+="**🔑 SSH:** \`${SSH_LINE}\`"$'\n\n'
fi
NOTE+="---"$'\n\n'
NOTE+="Installiert mit [gitea.vourx.com](https://gitea.vourx.com)"
NOTE+=" | [Debian Docs](https://www.debian.org/releases/)"
NOTE+=" | [Docker Docs](https://docs.docker.com)"
# Setzen via pvesh
pvesh set /nodes/$(hostname)/lxc/${CTID}/config --description "${NOTE}" 2>/dev/null \
&& success "Proxmox-Hinweise gesetzt." \
|| warn "Hinweise konnten nicht gesetzt werden bitte manuell eintragen."
# ── SSH vollständig konfigurieren ─────────────────────────────────────────────
if $ENABLE_ROOT_SSH; then
info "Installiere und konfiguriere SSH-Server …"
@@ -399,6 +451,15 @@ fi
# ── Abschluss ──────────────────────────────────────────────────────────────────
CONTAINER_IP=$(pct exec "$CTID" -- hostname -I 2>/dev/null | awk '{print $1}' || echo "unbekannt")
# Portainer-Timer zurücksetzen: erst hier neu starten, wenn alles fertig ist.
# So beginnt der 5-Minuten-Timeout erst jetzt nicht während der Installation.
if $INSTALL_PORTAINER; then
info "Portainer-Timer zurücksetzen (Neustart nach Installation) …"
pct exec "$CTID" -- docker restart portainer &>/dev/null \
&& success "Portainer neu gestartet 5-Minuten-Fenster beginnt jetzt." \
|| warn "Portainer-Neustart fehlgeschlagen ggf. manuell: docker restart portainer"
fi
echo ""
echo -e "${BOLD}${GREEN}╔═══════════════════════════════════════════════════════╗${NC}"
echo -e "${GREEN}${NC} ${BOLD}Installation abgeschlossen!${NC}"
@@ -410,19 +471,26 @@ printf "${GREEN}║${NC} %-18s ${BOLD}%s${NC}\n" "IP-Adresse:" "$CONTAINER_
echo -e "${GREEN}${NC}"
printf "${GREEN}${NC} %-18s ${BOLD}%s${NC}\n" "Docker:" "installiert & aktiv"
if $INSTALL_PORTAINER; then
printf "${GREEN}${NC} %-18s ${BOLD}https://%s:%s${NC}\n" "Portainer UI:" "$CONTAINER_IP" "$PORTAINER_PORT"
printf "${GREEN}${NC} %-18s ${BOLD}https://%s:%s${NC}\n" "Portainer UI:" "$CONTAINER_IP" "$PORTAINER_PORT"
echo -e "${GREEN}${NC} ${YELLOW} ⏱ Bitte innerhalb von 5 Min. Admin-Account anlegen!${NC}"
fi
if $ENABLE_ROOT_SSH; then
echo -e "${GREEN}${NC}"
echo -e "${GREEN}${NC} ${CYAN}── SSH-Verbindung ─────────────────────────────────${NC}"
if [[ "$SSH_PORT" == "22" ]]; then
printf "${GREEN}${NC} ${BOLD}ssh root@%s${NC}\n" "$CONTAINER_IP"
else
printf "${GREEN}${NC} ${BOLD}ssh root@%s -p %s${NC}\n" "$CONTAINER_IP" "$SSH_PORT"
fi
printf "${GREEN}${NC} %-18s ${BOLD}%s${NC}\n" "Auth-Methode:" "$SSH_AUTH"
echo -e "${GREEN}${NC}"
echo -e "${GREEN}${NC} ${CYAN}── SSH-Verbindung ─────────────────────────────────${NC}"
if [[ "$SSH_PORT" == "22" ]]; then
printf "${GREEN}${NC} ${BOLD}ssh root@%s${NC}\n" "$CONTAINER_IP"
else
printf "${GREEN}${NC} ${BOLD}ssh root@%s -p %s${NC}\n" "$CONTAINER_IP" "$SSH_PORT"
fi
printf "${GREEN}${NC} %-18s ${BOLD}%s${NC}\n" "Auth-Methode:" "$SSH_AUTH"
fi
echo -e "${GREEN}${NC}"
echo -e "${GREEN}${NC} ${YELLOW}⚠ Root-Passwort nach erstem Login bitte ändern!${NC}"
echo -e "${GREEN}${NC}"
echo -e "${BOLD}${GREEN}╚═══════════════════════════════════════════════════════╝${NC}"
if $INSTALL_PORTAINER; then
echo ""
echo -e "${YELLOW} Portainer Timeout? →${NC} ${BOLD}pct exec ${CTID} -- docker restart portainer${NC}"
fi
echo ""