- Registriert
- 8. November 2012
- Beiträge
- 2.062
- Lösungen
- 3
- Reaktionspunkte
- 2.412
- Punkte
- 2.130
- Ort
- World Wide Web
Heute möchte ich euch einmal erklären wie ihr für euch den Dienst "Apache2" auf Proxmox selbst hosten könnt.
1. Was ist Apache2 überhaupt und warum brauche ich es?
Apache2 ist eine weit verbreitete, freie und quelloffene Webserver-Software, die von der Apache Software Foundation entwickelt wird. Sie ermöglicht das Hosten und Bereitstellen von Webseiten und Webanwendungen über das Internet. Apache2 ist bekannt für seine Zuverlässigkeit, Flexibilität und die Vielzahl an Erweiterungen durch Module.
Ihr "braucht" also Apache2 wenn ihr eine eigene Website hosten wollt.
2. Container vorbereiten
Zu allererst wählen wir uns auf der Oberfläche unseres PVE Servers an und klicken mit Rechtsklick auf unseren Server, wählen dort "Erstelle CT".
Vergebt nun eure gewünscht CT-ID (Container ID), gebt dem Container unter "Hostname" den gewünschten Namen (Beispiel: Apache2 oder Apache2-Website1 oder Apache2-Website2, etc.).
klickt an, dass es sich um einen unpriviligierten Container handeln soll, Nesting bleibt aktiv.
Nun vergebt ihr noch das gewünschte Passwort für den Container und bestätigt die EIngabe (2. Mal das Passwort eingeben).
Klickt nun auf "Vorwärts".
Nun wählt ihr euer gewünschtes Template für den Container aus.
Ich nutze für meine LXCs allsamt das Ubuntu24.04 Template von Proxmox (müsst ihr natürlich vorher runtergeladen haben).
Klickt nun auf "Vorwärts".
Wählt den Speicherort der "virtuellen Festplatte" (Storage aus), ich belasse es bei local-lvm und gebt anschließend die gewünschte Größe in GB (GiB) ein.
Ich vergebe grundsätzlich mindestens 8GB dafür.
Klickt nun auf "Vorwärts".
Nun müssen wir die Anzahl der CPU-Kerne des Containers vergeben. Für PiHole reichen eigentlich 2 Kerne, ich habe jedoch 8 vergeben das Updates, etc. einfach schneller durchlaufen ;-)
Klickt nun auf "Vorwärts".
Arbeitsspeicher und SWAP reicht theoretisch 2GB (2048MB), ich vergebe aber grundsätzlich mindestens 8GB (8192MB), allein weil mein Server über ausreichend RAM verfügt und ich es hasse wenn Container "langsam" sind.
Klickt nun auf "Vorwärts".
jetzt müssen wir die Netzwerkeinstellungen konfigurieren.
Solange nicht anders nötig (VLAN, VPN-Netz, oder andere Gründe), vergebe ich eine feste IP-Adresse aus meinem Heimnetz.
Tragt dazu bei IPv4/CIDR die gewünschte IP-Adresse ein, als Beispiel 192.168.178.171/24 und die IP-Adresse eures Gateways (im Normalfall euer Router) ein. Hier als Beispiel mal 192.168.178.1. Bei IPv6 könnt ihr DHCP auswählen um automatisch eine IPV6 Adresse von eurem Router zu erhalten wenn ihr denn eine haben wollt.
Klickt nun auf "Vorwärts".
DNS-Einstellungen könnt ihr lassen wie sie sind.
Klickt nun auf "Vorwärts".
Klickt nun die Funktion "Nach erstellen starten" an und dann auf "Abschließen".
Es dauert einen Moment, dann taucht links euer neuer HomeAssistant-Container auf.
Klickt nun auf den Container und geht in die Konsole.
Gebt nun im Konsolenfenster den Benutzernamen root ein und als nächstes euer beim erstellen des Containers ausgewähltes Passwort.
Als nächstes updaten wir erst einmal den Container mit nachfolgendem Befehl:
3. Apache2 installieren
Meldet euch nach Neustart wieder mit root/Passwort-Kombi an und gebt als nächstes
Vorsichtshalber, auch wenn ggf. schon gelistet aktivieren / aktualisieren wir nochmal den Apache-Eintrag mittels
Dann starten wir den Container mal neu
Wenn ihr euch jetzt wieder einloggt und mittels
in den Ablageort der Index-Datei navigiert, könnt ihr diese dort mittels
nun nach euren Wünschen bearbeiten 
4. eure Website Daten in den Container hochladen
Natürlich könnt ihr auch eure Website(-daten) per FTP/WinSCP direkt in den Container hochladen.
Dazu müsst ihr jedoch den SSH-Zugriff erlauben.
Öffnet dazu die Datei sshd_config zum Bearbeiten mit nano
sucht nun die Zeile welche mit "#PermitRootLogin.." beginnt und fügt darunter eine Leerzeile ein.
Dort schreibt ihr dann
rein, speichert mit Strg+O und beendet nano mit Strg+X und startet den Container neu
nun könnt ihr euch auch per FTP/WinSCP mit dem Container verbinden und eure Daten auf den Webserver hochladen.
Empfehlung:
Es empfiehlt sich danach die Zeile mit "PermitRootLogin yes" wieder mit einem # auszuklammern.
weitere geplante HowTo's (werde ich dann nach und nach hier verlinken):
Wenn euch noch Themen einfallen, meldet euch gern per PN bei mir, dann gucke ich ob und wann ich das ganze selbst ausprobiere und hier als HowTo erstelle wie ich es gelöst habe.
1. Was ist Apache2 überhaupt und warum brauche ich es?
Apache2 ist eine weit verbreitete, freie und quelloffene Webserver-Software, die von der Apache Software Foundation entwickelt wird. Sie ermöglicht das Hosten und Bereitstellen von Webseiten und Webanwendungen über das Internet. Apache2 ist bekannt für seine Zuverlässigkeit, Flexibilität und die Vielzahl an Erweiterungen durch Module.
Ihr "braucht" also Apache2 wenn ihr eine eigene Website hosten wollt.
2. Container vorbereiten
Zu allererst wählen wir uns auf der Oberfläche unseres PVE Servers an und klicken mit Rechtsklick auf unseren Server, wählen dort "Erstelle CT".
Vergebt nun eure gewünscht CT-ID (Container ID), gebt dem Container unter "Hostname" den gewünschten Namen (Beispiel: Apache2 oder Apache2-Website1 oder Apache2-Website2, etc.).
klickt an, dass es sich um einen unpriviligierten Container handeln soll, Nesting bleibt aktiv.
Nun vergebt ihr noch das gewünschte Passwort für den Container und bestätigt die EIngabe (2. Mal das Passwort eingeben).
Klickt nun auf "Vorwärts".
Nun wählt ihr euer gewünschtes Template für den Container aus.
Ich nutze für meine LXCs allsamt das Ubuntu24.04 Template von Proxmox (müsst ihr natürlich vorher runtergeladen haben).
Klickt nun auf "Vorwärts".
Wählt den Speicherort der "virtuellen Festplatte" (Storage aus), ich belasse es bei local-lvm und gebt anschließend die gewünschte Größe in GB (GiB) ein.
Ich vergebe grundsätzlich mindestens 8GB dafür.
Klickt nun auf "Vorwärts".
Nun müssen wir die Anzahl der CPU-Kerne des Containers vergeben. Für PiHole reichen eigentlich 2 Kerne, ich habe jedoch 8 vergeben das Updates, etc. einfach schneller durchlaufen ;-)
Klickt nun auf "Vorwärts".
Arbeitsspeicher und SWAP reicht theoretisch 2GB (2048MB), ich vergebe aber grundsätzlich mindestens 8GB (8192MB), allein weil mein Server über ausreichend RAM verfügt und ich es hasse wenn Container "langsam" sind.
Klickt nun auf "Vorwärts".
jetzt müssen wir die Netzwerkeinstellungen konfigurieren.
Solange nicht anders nötig (VLAN, VPN-Netz, oder andere Gründe), vergebe ich eine feste IP-Adresse aus meinem Heimnetz.
Tragt dazu bei IPv4/CIDR die gewünschte IP-Adresse ein, als Beispiel 192.168.178.171/24 und die IP-Adresse eures Gateways (im Normalfall euer Router) ein. Hier als Beispiel mal 192.168.178.1. Bei IPv6 könnt ihr DHCP auswählen um automatisch eine IPV6 Adresse von eurem Router zu erhalten wenn ihr denn eine haben wollt.
Klickt nun auf "Vorwärts".
DNS-Einstellungen könnt ihr lassen wie sie sind.
Klickt nun auf "Vorwärts".
Klickt nun die Funktion "Nach erstellen starten" an und dann auf "Abschließen".
Es dauert einen Moment, dann taucht links euer neuer HomeAssistant-Container auf.
Klickt nun auf den Container und geht in die Konsole.
Gebt nun im Konsolenfenster den Benutzernamen root ein und als nächstes euer beim erstellen des Containers ausgewähltes Passwort.
Als nächstes updaten wir erst einmal den Container mit nachfolgendem Befehl:
Code:
apt update && apt-get upgrade -y && apt-get autoremove -y && reboot
3. Apache2 installieren
Meldet euch nach Neustart wieder mit root/Passwort-Kombi an und gebt als nächstes
Code:
apt install apache2 -y
Vorsichtshalber, auch wenn ggf. schon gelistet aktivieren / aktualisieren wir nochmal den Apache-Eintrag mittels
Code:
ufw allow 'Apache Full'
Dann starten wir den Container mal neu
Code:
reboot
Wenn ihr euch jetzt wieder einloggt und mittels
Code:
cd /var/www/html/
Code:
nano index.html

4. eure Website Daten in den Container hochladen
Natürlich könnt ihr auch eure Website(-daten) per FTP/WinSCP direkt in den Container hochladen.
Dazu müsst ihr jedoch den SSH-Zugriff erlauben.
Öffnet dazu die Datei sshd_config zum Bearbeiten mit nano
Code:
nano /etc/ssh/sshd_config
Dort schreibt ihr dann
Code:
PermitRootLogin yes
Code:
reboot
nun könnt ihr euch auch per FTP/WinSCP mit dem Container verbinden und eure Daten auf den Webserver hochladen.
Empfehlung:
Es empfiehlt sich danach die Zeile mit "PermitRootLogin yes" wieder mit einem # auszuklammern.
weitere geplante HowTo's (werde ich dann nach und nach hier verlinken):
- HowTo PVE - serielles Gerät an LXC durchreichen
- HowTo PVE - PiHole und AdGuard gleichzeitig in eurer FritzBox nutzen
- HowTo PVE - LXC PiHole
- HowTo PVE - LXC AdGuard
- HowTo PVE - LXC Whoogle-Search
- HowTo PVE - LXC NGinx Proxy Manager inkl. Updaten einer Stato-Domain.
- HowTo PVE - LXC Homebridge
- HowTo PVE - LXC HomeAssistant
- HowTo PVE - LXC Apache2 Webserver
- HowTo PVE - LXC Nextcloud
- HowTo PVE - VM Synology-NAS selbst gebaut mit Proxmox
- HowTo PVE - VM Windows Server 2022
- HowTo PVE - VM Windows Server 2025
- HowTo PVE - VM macOS
- HowTo PBS - Installation von Proxmox Backup Server (WICHTIG!)
- HowTo PBS - Installation von Proxmox Backup Server auf einem Raspberry Pi (für mich erstmal ganz weit hinten, geht aber!)
Wenn euch noch Themen einfallen, meldet euch gern per PN bei mir, dann gucke ich ob und wann ich das ganze selbst ausprobiere und hier als HowTo erstelle wie ich es gelöst habe.
Zuletzt bearbeitet: