Skip to main content
Hyper 8 Spacefun Videos

CasaOS - Selfhosting mit Stil

Hallo liebe unsterbliche Weltraum-Elite.  In diesem Video möchte ich euch eine ganz   00:00
besondere Lösung zum Selfhosting vorstellen.  Und zwar handelt es sich dabei um CasaOS.   00:06
CasaOS wird von einem Hardwarehersteller  entwickelt, der sich ZimaSpace nennt. ZimaSpace   00:13
entwickelt so kleine Singleboard-Computer  und Cloudlösungen, die du käuflich erwerben   00:23
kannst. Die kannst du auf zimaspace.com einfach  mal anschauen. Sie entwickeln aber auch eine   00:29
eigene Selfhosting-Lösung, die sehr einfach zu  installieren und zu benutzen ist. Und wie das   00:37
genau geht, zeige ich dir heute. Als Basis habe  ich wie üblich hier meine Linux-Distribution   00:44
TuxWiz in der Mini-Variante gewählt. Denn  die eignet sich sehr gut für die Installation   00:50
eines Servers und sie bietet trotzdem noch  eine minimalistische grafische Oberfläche.   00:56
Einmal installiert, kannst du auch gleich schon  loslegen. Und hier steht dieser eine Befehl,   01:03
der zur Installation von CasaOS genutzt werden  kann. Und wie du siehst, steht hier ganz am Anfang   01:09
'curl'. Wir müssen also erst einmal schauen, ob  wir 'curl' überhaupt verfügbar haben. 'curl' ist   01:16
hier jetzt bisher nicht installiert. Ich müsste  es also nachinstallieren. Es kann aber sein, dass   01:22
es auf deiner Linux-Distribution, falls du etwas  anderes nutzen solltest, bereits installiert ist.   01:27
Ich installiere das ganze mal wie üblich mit 'sudo  apt install curl', muss dann einmal mein Passwort   01:33
eingeben und im Hintergrund wird jetzt auch  schon 'curl' installiert. Wenn das erfolgt ist,   01:40
dann kann ich mir hier diesen Befehl kopieren.  Ich kann hier entweder auf dieses Symbol klicken   01:47
oder das ganze mit der Maus markieren und dann  im Terminal einfügen. Im Terminal gilt allerdings   01:53
die Regel, dass das Einfügen nicht mit 'Ctrl+V'  funktioniert, sondern mit 'Ctrl+Shift+V'. Genauso   02:00
wie das Kopieren mit 'Ctrl+Shift+C', das Einfügen  mit 'Ctrl+Shift+V'. Ich kann hier diesen Befehl   02:08
also ganz einfach mal ausführen und im Hintergrund  lädt er mir jetzt bereits diese Software herunter.   02:14
Er hat einige Abhängigkeiten, die er natürlich  zunächst prüft und dann installiert er seine   02:23
eigenen Applikationen. Das ganze dauert natürlich  etwas, das ist relativ aufwendig, wie das so bei   02:30
so Selfhosting-Lösungen der Fall ist. Ich habe  euch ja schon verschiedene Lösungen vorgestellt,   02:35
unter anderem die FreedomBox und YunoHost. Ich  habe euch auch gezeigt, wie ihr Nextcloud mit   02:40
snap installieren könnt, das ist auch eine meiner  bevorzugten Lösungen und vieles vieles mehr. Bei   02:45
dieser Lösung ist es natürlich auch ähnlich  wie bei allen Selfhosting.-Lösungen. Wenn   02:52
du das Ganze aus dem Internet erreichbar machen  möchtest, dann musst du die entsprechenden Ports   02:57
auf deinem Router forwarden. Dazu kannst du erst  einmal prüfen, welche IP-Adresse dein Computer   03:02
hat. Das kannst du z.B. mit dem Befehl 'hostname  -I'. Dann zeigt er dir hier die IP-Adresse an,   03:10
die du hier in deinem Netzwerk hast. Das ist bei  mir diese. Ich könnte jetzt hier z.B. mal auf   03:20
meinem Router, von dem kenne ich die IP, das ist  die 192 681.1, falls du die nicht kennst, kannst   03:25
du den Befehl 'ip r s' nutzen. 'ip route show'  heißt das. Und damit kannst du ganz genau sehen,   03:33
welcher hier als Default Gateway hinterlegt wurde.  Und das ist hier in meinem Fall die 192 168 1.1.   03:41
Und dann bin ich auch schon auf dem Webinterface  von meinem Router und kann jetzt mal versuchen,   03:49
mich da dran anzumelden. Das muss also. Ich bin  jetzt hier in dem Interface von meinem Router drin   03:55
und kann dann hier bei mir unter dem Bereich  Netzwerkeinstellung hier unter NAT das Port   04:01
Forwarding konfigurieren. Wenn du bei dir jetzt  allerdings so etwas wie DS-Lite hast, also eine   04:08
abgespeckte Version, bei der du gar keine echte  externe IPv4-Adresse mehr bekommst, dann kannst du   04:15
das z.B. auch mit einem Cloudflare-Tunnel lösen.  Und das ganze habe ich in einem anderen Video auch   04:21
schon einmal erklärt. Also hier kann ich bei mir,  ich habe also immer noch eine richtige IP-Adresse,   04:28
das Port-Forwarding einstellen. Das habe ich  hier schon mal gemacht für die Protokolle HTTP   04:34
und HTTPS und zwar möchte ich alle Anfragen hier  auf meine IP-Adresse, die ich eben mit 'hostname   04:39
-I' ausgelesen habe, auf Port 80 und auf  443 weiterleiten. Das habe ich schon mal   04:47
vorbereitet und zusätzlich habe ich auch bei mir  noch eine DynDNS-Adresse konfiguriert. Das kann   04:54
man bei mir hier direkt auf dem Router machen,  hier im Bereich 'DNS / DynDNS' und da habe ich   04:59
tuxwiz.mooo.com registriert. Das Ganze habe ich  wie üblich schon vorbereitet und kann sozusagen   05:05
gleich loslegen. Hier im Hintergrund hat er  jetzt auch schon CasaOS einmal installiert   05:13
und er zeigt mir hier am Ende noch ein paar  wichtige Informationen. Und zwar einmal hier,   05:19
wie es wieder deinstallieren kann, zur Not und  aber auch die IP-Adresse, über die ich auf das   05:24
System zugreifen kann. Und zwar wäre das hier mal  diese IP-Adresse und ich sage jetzt hier erstmal   05:29
'Ok'. Ich kann einen Benutzernamen hinterlegen,  'astronaut' sage ich dann mal. Dann gebe ich hier   05:37
ein Passwort ein. Ich muss das Passwort einmal  wiederholen und bin eigentlich schon startklar.   05:42
Er legt mir jetzt hier im Hintergrund alles an  und hier könnte ich jetzt noch sagen, ob mir die   05:48
News angezeigt werden sollen. Ich sage jetzt hier  mal 'Cancel' und bin dann hier schon im Dashboard   05:53
drin. Ich empfehle euch, dieses Dashboard z.B.  auf einen anderen Port zu legen, denn nachher   05:58
wollen wir ja einen Proxyserver nutzen und  dafür brauchen wir dann den Port 80 und 443.   06:04
Dazu gibt es hier oben einen Punkt 'Settings' und  da kann man so ein paar Einstellungen vornehmen,   06:09
z.B. die Lieblingssuchmaschine oder aber  auch die Sprache, die sich hier auf Deutsch   06:15
einstellen kann. Ich würde jetzt mal den Port  z.B. mal auf Port 82 ändern. Port 81 brauchen   06:20
wir nachher für den Nginx Proxy Manager. Port  82 sollte aber frei sein. Jetzt speichert er   06:27
das Ganze ab im Hintergrund. Natürlich müsste  ich mich jetzt wieder neu anmelden, denn der   06:33
Zugriff ist ja neu dann über den Port 82 geregelt.  Ich kann hier hinten also einfach Doppelpunkt,   06:38
das gibt immer den Port an, ':82' angeben und  sollte dann auch schon wieder auf dem Webinterface   06:45
landen. Da muss ich mich jetzt natürlich einmal  neu anmelden. 'astronaut' und wieder das vergebene   06:52
Passwort. Das merkt ihr euch bitte sehr gut.  Hier ist jetzt erstmal noch nichts installiert.   06:59
Du hast hier einfach ein Dashboard. Da siehst du,  wie die Festplatten-Auslastung ist, die CPU und   07:04
dein RAM und die Uhrzeit und kannst hier noch ein  paar Einstellungen an den Widgets vornehmen. Hier   07:08
oben kannst du dein Benutzerkonto verwalten, das  Passwort ändern oder dich abmelden und hier waren   07:13
wir vorhin schon mal drin. Hier kannst du auch  diesen Newsfeed noch mal einstellen. Du könntest   07:18
hier auch ein Hintergrundbild einstellen und  noch ein paar Einstellungen hier bezüglich des   07:22
mountens von USB-Laufwerken machen. Hier ist  auch die Möglichkeit, das System vollständig   07:27
zu aktualisieren, und da solltest du regelmäßig  mal draufschauen. Das Ganze kommt mit so etwas   07:34
wie einem App Store und den können wir uns  jetzt mal anschauen. Das tolle hier ist, dass   07:39
die Lösung CasaOS wirklich fast alles mit Docker  realisiert und das finde ich eine sehr gute Wahl,   07:44
eben wenn es um das Selfhosting geht. Hier könnte  ich jetzt z.B. so etwas wie Nextcloud einfach mal   07:51
anschauen. Hier unten werden diese Apps auch im  Detail noch mal aufgeführt. Ich kann hier auch   07:57
suchen 'nextcloud' und finde dann schon die  Nextcloud-App und kann sie dann hier direkt   08:01
installieren. Im Hintergrund wird jetzt Nextcoud  für mich bereits installiert. Ich kannte das jetzt   08:07
hier im Hintergrund festlegen, also, dass er  jetzt das im Hintergrund weiter für mich macht.   08:13
Das sage ich jetzt sogar mal und dann sehe ich  das hier auch auf dem Dashboard. Zusätzlich zu   08:17
Nextcloud brauchen wir natürlich dann nachher  noch ein Proxy, denn wir möchten ja auch das   08:23
SSL-Zertifikat lösen für Let's Encrypt, weil  hier seht ihr das Ganze ist hier im LAN nur   08:26
über HTTP und nicht über HTTPS. Das seht ihr hier  an diesem durchgestrichenen Schloss-Symbol. Ich   08:32
gehe jetzt hier auch noch mal auf den AppStore  und suche mir jetzt da einen schönen Proxy und   08:40
ich habe euch schon mal den Nginx Proxy Manager  in einem anderen Video vorgestellt. Da ging es um   08:45
ownCloud und den möchte ich jetzt hier auch gerne  noch mal verwenden. Denn der eignet sich wirklich   08:51
sehr sehr gut und ich habe den sehr gerne Nginx  Proxy Manager. Den finde ich hier in der Suche   08:57
und da ist er schon. Da muss ich ein bisschen mehr  konfigurieren bei der Installation. Ich sage jetzt   09:02
mal installieren. 'Warning', da sagt er mir hier  auch, er würde 80, 81 und 443 belegen, diese Ports   09:06
und das möchte ich natürlich auch. Ich sage jetzt  hier also 'Next'. Er startet jetzt hier in der im   09:14
Hintergrund auch mit der Installation vom Nginx  Proxy Manager. Also, da laufen die Installationen   09:20
jetzt parallel. Du kannst jetzt hier schon  mal schauen, wie weit er hier ist mit der   09:26
Installation von den anderen Apps ist, wir haben  ja vorhin Nextcoud schon mal angestartet. Damit   09:31
sollte er also auch gleich durch sein. Da schauen  wir gleich mal, ob wir denn da schon irgendwas   09:36
am Laufen haben. Hier habe ich im AppStore  natürlich auch noch andere Applikationen zur   09:40
Auswahl. Ich könnte jetzt hier z.B. auch AdGuard  installieren. Hier läuft so ein Slider durch,   09:45
der so ein paar wichtige Applikationen zeigt  wie z.B. AdGuard. Das ist auch so ein Adblocker,   09:50
so ähnlich wie pi-hole oder eBlocker, den ich  schon mal vorgestellt habe. Hier gibt es aber   09:56
auch noch viele andere Applikationen zur Auswahl  und da findest du bestimmt das Richtige für dich   10:01
dabei. Da gibt es sogar ChatGPT für AI-Dialoge  und vieles, vieles mehr. Hier gibt es z.B. auch   10:07
noch einen DynDNS Updater. Ich habe das bei  mir im Router konfiguriert und finde das da   10:14
auch ganz gut gelöst. Du kannst das für dich hier  aussuchen, was dir gefällt. Wähle also diese Apps,   10:19
die dir wirklich passen, da ist sehr, sehr viel  dabei und schau mal, was hier im AppStore alles   10:25
verfügbar ist. Im Hintergrund schauen wir jetzt  mal, ob er den hier schon irgendwas gemacht hat.   10:31
Er ist immer noch an der Installation vom npm,  Nginx Proxy Manager. Hier hat aber die Nextcoud   10:36
schon mal installiert gehabt. Ich öffne die auch  schon mal die Nextcloud. Also alle Apps, die   10:42
reihen sich dann hier ein, die du installiert hast  und dann kannst du ganz einfach darauf zugreifen.   10:47
Da schaue ich jetzt auch noch mal rein. Da muss  ich jetzt natürlich einen neuen Benutzernamen,   10:52
also ein neues Adminkonto, anlegen. Hier  sagt er 'Administratorkonto anlegen',   10:57
also nicht anmelden, sondern anlegen. Ich  sage jetzt hier wieder 'astronaut' und gebe   11:01
mein Passwort ein. Das ist App-spezifisch und  ich sage dann 'Installieren'. Und das verwendet   11:06
jetzt hier die SQLite Datenbank. Da gibt es auch  bessere Lösung wie z.B. MySQL. Das habe ich auch   11:13
entsprechend schon verwendet und das ist für  größere Installationen unbedingt zu empfehlen. Bei   11:18
so einer kleinen Installation reicht aber SQLite  durchaus aus. Also wenn es nur um einen Server für   11:23
dich und deine Familie oder Freunde geht, dann  kannst du das durchaus damit auch betreiben.   11:30
Hier installiert er jetzt die Anwendung, also die  Nextcloud im Hintergrund, schon mal durch und er   11:35
empfiehlt mir jetzt hier noch ein paar  Standard-Apps mitzuinstallieren. Ich überspringe   11:41
das jetzt. Das kannst du für dich entscheiden.  Da gibt es halt so ganz viele tolle Features   11:46
dabei. Kalender, Kontakte, Mail Nextcoud Office,  Notes und Talk. Ich brauche das alles nicht. Ich   11:49
möchte jetzt die Standard-Dateisynchronisation  und dann habe ich hier eigentlich schon meine   11:54
Nextcoud komplett durch installiert. Ich kann hier  diese Hinweise noch schließen und bin eigentlich   12:00
mit der Nextcoud schon startklar. Aber du siehst  hier auch, er verwendet hier einen Port, nämlich   12:05
10081. Und ist auch nur hier über meine lokale  IP-Adresse erreichbar. Das möchten wir natürlich   12:11
entsprechend ändern, denn wir möchten ja, dass  deine Nextcoud auch aus dem Internet erreichbar   12:18
ist, denn sonst bringt sie natürlich nicht viel.  Das Ganze lösen wir jetzt hier über den Nginx   12:23
Proxy Manager, der jetzt hier im Hintergrund  auch schon installiert worden ist. Den öffne   12:28
ich jetzt mal hier zur Konfiguration und da muss  ich jetzt mal schauen, welches Passwort er denn   12:32
da vergeben hat, weil ich gehe nicht davon aus,  dass er hier mein 'astronaut' Konto hinterlegt   12:38
hat. Ich kann mal hier schauen. Hier gibt es  nämlich noch die Konfigurationseinstellungen   12:44
und Tipps und da können wir mal schauen, ob da  etwas hinterlegt ist. Also hier werden schon   12:48
mal die Ports verwendet 80, 443 und 81. Das  ist sehr, sehr gut aus und eigentlich ist es   12:53
alles hier schon sauber durch konfiguriert. Ich  schaue mir jetzt noch mal die Tipps an. Vielleicht   12:59
sehe ich es da. Ich vermute, er verwendet das  Standard-Default-Adminpasswort. Bei 'user' steht   13:03
'admin@example.com' und 'changeme'.  Das müssen wir natürlich ändern. 13:09
'admin@example.com' und 'changeme'. So,   13:13
das ist jetzt hier automatisch gestartet  worden und hier sehe ich auch schon die   13:20
Abfrage nach dem Account und den kann ich  hier entsprechend ändern. Also z.B. astronaut 13:26
spacefun.ch 13:34
astronaut@spacefun.ch. Bei Benutzername sage ich  jetzt 'astronaut' und auch Nickname 'Astronaut',   13:35
sage 'Save' und kann jetzt hier das Passwort  'changeme' noch mal eingeben und gebe hier   13:49
auch sicherheitshalber ein neues Passwort ein.  Das würde ich dir unbedingt auch empfehlen. Das   13:56
habe ich jetzt gemacht. Der User ist startklar  und ich kann hier eigentlich auch schon direkt   14:02
loslegen und ich könnte jetzt hier einen neuen  Proxy Host anlegen. Und wir haben jetzt das schon   14:08
mal gelernt. Falls du meine anderen Videos schon  mal geschaut hast, dann weißt du schon, wie das   14:13
funktioniert. Ich erkläre es dir gerne aber noch  mal. Wir sagen jetzt als Domain die DynDNS-Domain,   14:17
die ich vorher registriert habe, die bei mir am  Router eingerichtet ist. Es wäre tuxwiz.mooo.com 14:22
Ich sage hier unten 'Scheme', sage ich jetzt  'HTTP', denn mein lokaler Dienst läuft ja   14:29
auf HTTP, also die Nextcloud läuft jetzt hier  auf HTTP, nämlich eben auf diesem Port hier: 14:36
10081. Also ich sage jetzt 'Forwarding',  'Forward Hostname oder IP', das wäre jetzt meine   14:43
IP-Adresse. Das ist die hier. Die kopiere ich mir  jetzt mal. Da möchte ich die Anfragen hinleiten   14:51
und das ganze dann eben auf diesen 10081 Port. Das  'save' ich jetzt im Augenblick erstmal. Ich sag   14:59
jetzt mal 'Ok' und dann kann ich hier noch mal auf  'Edit' gehen und sage dann hier bei SSL 'Request   15:08
new SSL Certificate'. Ich sage also hier unten,  muss ich noch 'Agree' machen, sage 'Save' und   15:15
dann sollte er im Hintergrund jetzt auch schon ein  SSL-Zertifikat mit 'Let's Encrypt' beziehen und   15:21
das automatisch auf dieser Domain tuxwiz.mooo.com  aktivieren. Und so könnte ich einfach Dienste für   15:26
mich im Selfhosting hier konfigurieren und jetzt  sollte im besten Fall auch das Ganze schon über   15:34
tuxwiz.mooo.com erreichbar sein. Ich schaue  mir das Ganze mal an und du siehst, das ist   15:41
tatsächlich schon erreichbar. Bei Nextcloud muss  man natürlich noch eine vertrauenswürdige Domain   15:47
angeben. Das ist typisch für Nextcloud. Das muss  man in den Einstellungen hinterlegen. Da kann man   15:52
dann wirklich die Domain auch hinterlegen, auf  der er lauschen soll. Das ist noch sehr wichtig,   15:58
denn sonst würde er gar nicht darauf hören.  Also da kann man dann hier noch entsprechend   16:04
diese vertrauenswürdige Domain hinterlegen. Und  wie das Ganze geht, das zeige ich dir jetzt auch   16:10
gerade noch. Und zwar siehst du hier einmal  den Speicherpfad dieser App. Der ist wichtig,   16:17
denn den brauchen wir dazu nämlich bis hierhin.  Den kopieren wir uns jetzt mal und dann gehe   16:23
ich im Terminal einfach mal da rein. Das füge  ich jetzt hier im Terminal ein und kann jetzt   16:29
hier mal schauen, was denn da so drin ist. Und  unter 'nextcloud' findet man die Konfiguration   16:34
üblicherweise im Ordner 'config' und die heißt  dann in der Regel 'config.php'. Die muss ich   16:39
natürlich jetzt mit Root-Rechten bearbeiten,  denn mein User ist nicht Mitglied der Gruppe   16:47
'www-data'. Also müsste ich hier 'sudo', ich öffne  es jetzt mal mit vi, du kannst es aber auch mit   16:51
nano öffnen vi und dann z.B. 'config.php'. Und  hier suche ich jetzt mal nach 'trusted_domains'.   16:57
'trusted_domains' und da gibt es dann so ein  Array. Das ist aufgebaut '0 = >' dann der Single   17:08
Tic, dann die Domain, eventuell noch der Port,  dann der Single Tic und ein Komma. Und ich habe   17:17
jetzt hier im Hintergrund schon mal für euch  einen neuen Eintrag gemacht. Nämlich '1', das   17:24
ist fortlaufend, '= >' dann der Single Tic, dann  meine Domain 'tuxwiz.mooo.com' und dann wieder   17:28
das Komma zum Abschluss. Das ganze kannst du dann  einfach abspeichern und dann kannst du in der App,   17:36
also in der WebGUI den Dienst ganz einfach neu  starten. Und dazu gehe ich jetzt mal hier rauf   17:42
und kann jetzt hier einfach sagen 'Reload'. Da  seht ihr hier unten diesen Reload-Button. Und   17:48
im Nu hat er jetzt hier im Hintergrund auch schon  die Konfiguration entsprechend für dich angepasst,   17:54
die Trusted Domain hinzugefügt. Und wenn ich  jetzt noch mal auf tuxwiz.mooo.com zugreife,   18:00
dann sehe ich hier auch entsprechend dann diesen  entsprechenden Eintrag. Das geht jetzt hier immer   18:06
noch über HTTP. Das könnte ich jetzt angeben  hier vorne https:// dann wird es automatisch   18:11
über https laufen. Ich kann aber auch mit  einem Trick über den Nginx Proxy Manager   18:18
hier ganz einfach den Forward aktivieren. Hier  unter 'SSL' Force SSL' setzen und dann werden   18:23
alle Anfragen direkt auf HTTPS weitergeleitet. Du  hast also hier mit CasaOS eine super Möglichkeit,   18:30
ganz einfach eine Nextcloud und viele andere  Applikationen aufzubauen. Das musst du dann   18:38
natürlich entsprechend über deinen Proxy oder  sonst irgendwas zugänglich machen oder halt nur   18:44
im LAN benutzen, wie du möchtest. Dann brauchst du  den Proxyserver nicht. Hier ist natürlich der NPM,   18:49
der Nginx Proxy Manager schon mit dabei  und du hast alles und unter einem Dach.   18:54
Deswegen heißt das ganze auch CasaOS und hier  hättest du z.B. dann auch die Möglichkeit,   18:59
die einzelnen Apps zu updaten, also du kannst  hier sagen 'Auf Aktualisierungen prüfen'. Du   19:04
kannst in den Einstellungen sogar sagen, welchen  'Tag' du hier wählen möchtest von der Nextcloud.   19:09
Also das sind so 'Release Tags', die kannst  du hier tatsächlich auch angeben. 'latest'   19:14
könntest du angeben oder 'stable'. 'stable' ist  jetzt hier vorausgewählt und dann hast du immer   19:18
die aktuellste Version. Ich wünsche dir viel  Spaß beim Nachbauen dieser interessanten, etwas   19:23
besonderen Lösung. Die ist nicht, wie die  vielen anderen Selfhosting-Lösungen. Sie   19:31
verhält sich etwas anders. Ich finde es sehr  schön gemacht. Sie hat ein schönes Dashboard,   19:36
sie nutzt moderne Software wie Docker im  Hintergrund. Du hast also wirklich alles sehr   19:40
sauber gelöst und ich finde das eine ganz feine  Sache. Probier es mal aus, berichte mir auch in   19:46
den Kommentaren oder bei uns in der Community.  Wie du die findest, dazu gehst du einfach auf   19:52
https://spacefun.ch, meine Webseite von meiner  Linux-Distribution und wählst hier hinten den   19:58
Punkt Community und schon bist du bei uns dabei.  Viel Spaß beim Nachbauen. Wenn du Fragen hast,   20:03
melde dich und ich freue mich auf  deinen Besuch. Tschüss und bis bald! 20:10
Hello fellow immortal space elite. In this video, I'd like 00:00
to introduce you to a very special self-hosting solution. It's CasaOS. 00:06
CasaOS is developed by a hardware manufacturer called ZimaSpace. ZimaSpace 00:13
develops small single-board computers and cloud solutions that you 00:23
can purchase. You can check them out at zimaspace.com. They're also developing 00:29
their own self-hosting solution that's very easy to install and use. And 00:37
I'll show you exactly how it works today. As usual, I've chosen my Linux distribution 00:44
TuxWiz in the mini version as the basis. It's very well suited for installing 00:50
a server and still offers a minimalist graphical interface. 00:56
Once installed, you can get started right away. And here's the one command 01:03
that can be used to install CasaOS. And as you can see, 01:09
'curl' is right at the beginning. So, we first need to check whether 'curl' is even available. 'curl' is 01:16
n't installed here yet. So I'd have to install it. However, it might 01:22
already be installed on your Linux distribution if you're using something else. 01:27
I'll install it as usual with 'sudo apt install curl', then I'll have 01:33
to enter my password once, and 'curl' will be installed in the background. Once that's done, 01:40
I can copy this command here. I can either click on this icon 01:47
or select the entire file with the mouse and then paste it into the terminal. In the terminal, however, 01:53
the rule is that pasting doesn't work with 'Ctrl+V', but with 'Ctrl+Shift+V'. Just 02:00
like copying with 'Ctrl+Shift+C', pasting with 'Ctrl+Shift+V'. 02:08
So I can simply run this command here, and in the background, it will download the software for me. 02:14
It has a few dependencies, which it naturally checks first, and then it installs its 02:23
own applications. The whole thing takes some time, of course, and is relatively complex, as is often 02:30
the case with self-hosting solutions. I've already introduced you to various solutions, 02:35
including FreedomBox and YunoHost. I've also shown you how 02:40
to install Nextcloud with snap, which is also one of my preferred solutions, and much, much more. 02:45
This solution is, of course, similar to all self-hosting solutions. If 02:52
you want to make the whole thing accessible from the internet, you'll need to 02:57
forward the corresponding ports on your router. To do this, you can first check your computer's IP address 03:02
. You can do this, for example, with the command 'hostname -I'. It will then show you the IP address 03:10
you have here in your network. In my case, it's this one. For example, I could try 03:20
my router; I know the IP of it, which is 192 681.1. If you don't know it, 03:25
you can use the command 'ip r s'. It's called 'ip route show'. This allows you to see exactly 03:33
which gateway has been set as the default. In my case, that's 192 168 1.1. 03:41
And now I'm on my router's web interface and can try 03:49
to log in. So that has to be done. I'm now in my router's interface 03:55
and can configure port forwarding under NAT in the network settings area 04:01
. However, if you have something like DS-Lite, a 04:08
slimmed-down version where you don't get a real external IPv4 address at all, you can 04:15
solve this with a Cloudflare tunnel, for example. I've already explained all of this in another video 04:21
. So here I can set up port forwarding - I still have a real IP address 04:28
. I've already done this for the HTTP 04:34
and HTTPS protocols. I want to forward all requests to my IP address, which I just 04:39
read with 'hostname -I', to port 80 and 443. I've already 04:47
prepared this, and I've also configured a DynDNS address. This can 04:54
You can do it directly on my router here, in the 'DNS / DynDNS' section, and I've 04:59
registered tuxwiz.mooo.com there. I've already prepared the whole thing as usual and can basically 05:05
get started right away. It's already installed CasaOS in the background 05:13
, and at the end it shows me some important information. It shows me 05:19
how to uninstall it, if necessary, and also the IP address I 05:24
can use to access the system. This would be this IP address, and I'll say 05:29
'OK' here first. I can enter a username, 'astronaut' I'll say. Then I enter 05:37
a password here. I have to repeat the password once, and I'm basically ready to go. 05:42
It's now setting everything up for me in the background, and here I can also say whether I 05:48
want the news displayed. I'll say 'Cancel' here, and then I'm already in the dashboard 05:53
. I recommend that you set this dashboard to a different port, for example, because later 05:58
we want to use a proxy server and for that we need ports 80 and 443. 06:04
There is a 'Settings' item up here and you can make a few settings there, 06:09
for example your favorite search engine or the language, which 06:15
can be set to German here. I would now change the port to port 82, for example. 06:20
We will need port 81 later for the Nginx Proxy Manager. Port 82 should be free, though. It will now save 06:27
the whole thing in the background. Of course, I would now have to log in again, because 06:33
access is now controlled via port 82. So I can simply enter a colon here, 06:38
which always indicates the port, ':82' and that should 06:45
take me back to the web interface. Of course, I now have to log in again. 'astronaut' and again the assigned 06:52
password. Please remember this very well. Nothing is installed here yet. 06:59
You simply have a dashboard. There you can see the disk usage, the CPU, 07:04
your RAM, and the time, and you can also adjust a few widget settings. 07:08
Up here, you can manage your user account, change your password, or log out— 07:13
we were already here. Here you can also configure this news feed again. You can 07:18
also set a background image here and adjust a few settings regarding 07:22
mounting USB drives. There's also the option 07:27
to fully update the system, and you should check it regularly. The whole thing comes with something 07:34
like an app store, and we'll take a look at that now. The great thing here is that 07:39
the CasaOS solution really does almost everything with Docker, and I think that's a very good choice, 07:44
especially when it comes to self-hosting. I could just take a look at something like Nextcloud here, for example 07:51
. These apps are listed in detail below. I can also 07:57
search for 'nextcloud' and then find the Nextcloud app, which I can then install directly 08:01
. Nextcloud is now being installed for me in the background. I knew that I was going to set it 08:07
up in the background, so that it would continue to do this for me in the background. 08:13
I'll even say that now, and then I'll see it here on the dashboard. In addition to 08:17
Nextcloud, we'll of course also need a proxy later, because we also want 08:23
to issue the SSL certificate for Let's Encrypt, because here you can see that the whole thing is only 08:26
via HTTP and not HTTPS in the LAN. You can see that here by the crossed-out lock symbol. I'm 08:32
going to go to the App Store again now and look for a suitable proxy, and 08:40
I already introduced you to the Nginx Proxy Manager in another video. That video was about 08:45
ownCloud, and I'd like to use it again here. It's really, 08:51
really suitable, and I really like the Nginx Proxy Manager. I can find it here in the search, 08:57
and there it is. I need to configure it a bit more during installation. I'll just say 09:02
install it. 'Warning', he also tells me here that he would use 80, 81 and 443, these ports 09:06
And of course, I want that too. So I'll say 'Next' here. It's now starting 09:14
the installation of the Nginx Proxy Manager in the background. So, the installations are 09:20
now running in parallel. You can see how far it's progressed with the 09:26
installation of the other apps; we already started Nextcloud. So 09:31
it should be done with that in a bit. Let's see if we already 09:36
have anything running there. Of course, I also have other applications to 09:40
choose from in the App Store. I could install AdGuard here, for example. A slider runs through here 09:45
that shows a few important applications, such as AdGuard. That's also an ad blocker, 09:50
similar to pi-hole or eBlocker, which I've already introduced. There are 09:56
also many other applications to choose from, and you're sure to find the right one for you 10:01
. There's even ChatGPT for AI dialogs and much, much more. There's also a DynDNS updater 10:07
here, for example . I configured this on my router and think it's 10:14
a pretty good solution. You can choose what you like best. Choose the apps 10:19
that really suit you; there are a lot of them, and take a look at what's 10:25
available in the App Store. In the background, we'll see if it's already done anything here. 10:31
It's still installing npm, Nginx Proxy Manager. Nextcloud has 10:36
already been installed here, though. I'll also open Nextcloud. All the apps 10:42
you've installed will be listed here, and then you can access them easily. 10:47
I'll take another look at that. Of course, I need 10:52
to create a new username, a new admin account. It says "Create administrator account" here 10:57
—not "log in," but "create." I'll say "astronaut" again and enter 11:01
my password. This is app-specific, and I then say "Install." This uses 11:06
the SQLite database. There are better solutions, such as MySQL. I've 11:13
used that before and I definitely recommend it for larger installations. But for 11:18
a small installation like this, SQLite is perfectly sufficient. So if it's just a server for 11:23
you and your family or friends, you can definitely run it with that. 11:30
It's now installing the application, Nextcloud in the background, and it 11:35
recommends that I also install a few standard apps. I'll skip 11:41
that for now. You can decide for yourself. There are just so many great features 11:46
: Calendar, contacts, mail, Nextcloud Office, Notes and Talk. I don't need all that. I 11:49
want the standard file synchronization now and then I've basically already 11:54
installed my Nextcloud. I can close these notes and am basically 12:00
ready to go with Nextcloud. But you can also see here that it's using a port here, namely 12:05
10081. And it can only be reached via my local IP address. We'd like 12:11
to change that, of course, because we want your Nextcloud 12:18
to be accessible from the internet as well; otherwise, it's not much use. We'll solve this problem here using the Nginx 12:23
Proxy Manager, which has already been installed in the background. 12:28
I'll open it here for configuration, and I need to check which password it 12:32
has assigned, because I don't assume it 12:38
has stored my 'astronaut' account here. I can take a look here. The configuration settings and tips are also here 12:44
, and we can see if anything is stored there. So, 12:48
ports 80, 443, and 81 are already being used here. That looks very, very good, and 12:53
everything is actually already neatly configured here. I'll take another look at the tips. Maybe 12:59
I'll see it there. I suspect it's using the default admin password. 'User' says 13:03
'admin@example.com' and 'changeme'. We'll obviously have to change that. 13:09
'admin@example.com' and 'changeme'. So, 13:13
it has now started automatically and here I can already see the 13:20
request for the account, which I can change accordingly. For example, astronaut 13:26
spacefun.ch 13:34
astronaut@spacefun.ch. For username, I now say 'astronaut' and also nickname 'Astronaut', 13:35
say 'Save' and can now enter the password 'changeme' again and, 13:49
just to be on the safe side, enter a new password here. I would definitely recommend that you do the same. 13:56
I've done that now. The user is ready to go, and I can basically start right away, 14:02
and I could now create a new proxy host here. And we've already 14:08
learned how to do that. If you've watched my other videos before, then you already know how it 14:13
works. I'd be happy to explain it to you again. We'll now say the DynDNS domain 14:17
that I registered previously, which is set up on my router, is the domain. It would be tuxwiz.mooo.com. 14:22
I say 'Scheme' down here, I'll say 'HTTP' now, because my local service runs 14:29
on HTTP, so Nextcloud is running on HTTP here, specifically on this port: 14:36
10081. So I say 'Forwarding', 'Forward Hostname or IP', that would be my 14:43
IP address. That's this one. I'll copy that now. I want to forward the requests there 14:51
and then the whole thing to port 10081. I'll 'save' that for now. I say 14:59
'OK' now and then I can go to 'Edit' again and then say 'Request new SSL Certificate' under SSL 15:08
. So I say 'Agree' down here, say 'Save' and 15:15
then in the background it should obtain an SSL certificate with 'Let's Encrypt' and 15:21
activate it automatically on this domain tuxwiz.mooo.com. So I could simply 15:26
configure services for myself in self-hosting here and now, in the best case scenario, the whole thing should already 15:34
be accessible via tuxwiz.mooo.com. I'll take a look at the whole thing and you'll see that it is 15:41
actually already accessible. With Nextcloud, you obviously have to specify a trusted domain 15:47
. That's typical for Nextcloud. You have to enter that in the settings. There you can 15:52
then actually enter the domain on which it should listen. That's very important, 15:58
because otherwise it wouldn't listen at all. So you can 16:04
enter this trusted domain here. And I'll show you how it all works 16:10
. You can see the storage path for this app here. That's important, 16:17
because we need it up to here. We'll copy it over and then 16:23
just go to it in the terminal. I'll paste it here in the terminal and I can now 16:29
see what's in there. Under 'nextcloud' you can 16:34
usually find the configuration in the 'config' folder, which is usually called 'config.php'. I 16:39
obviously have to edit it with root privileges, because my user isn't a member of the 16:47
'www-data' group. So I'd need 'sudo' here. I'll open it with vi, but you can also 16:51
open it with nano, vi, and then, for example, 'config.php'. And here I'm looking for 'trusted_domains'. 16:57
'trusted_domains' and there you'll find an array. It's structured as '0 = >', then the single 17:08
tic, then the domain, possibly the port, then the single tic, and a comma. And I've 17:17
already made a new entry for you here in the background. Namely '1', which 17:24
is sequential, '= >', then the single tic, then my domain 'tuxwiz.mooo.com', and then 17:28
the comma again at the end. You can then simply save the whole thing, and then you can 17:36
easily restart the service in the app, i.e., in the WebGUI. To do this, I'll go up here 17:42
and simply say 'Reload'. You'll see this Reload button down here. And 17:48
in no time, it'll have adjusted the configuration for you in the background, 17:54
adding the trusted domain. And if I access tuxwiz.mooo.com again, 18:00
then I will see the corresponding entry here. This is still happening 18:06
over HTTP. I could enter https:// at the front, then it will automatically 18:11
run over https. But I can also use a trick with the Nginx Proxy Manager 18:18
to simply activate the forwarding. Under 'SSL', set 'Force SSL' and then 18:23
all requests will be forwarded directly to HTTPS. So with CasaOS you have a great opportunity to 18:30
easily set up a Nextcloud and many other applications. You then have to 18:38
make it accessible via your proxy or something else, or just 18:44
use it on the LAN, as you wish. Then you don't need the proxy server. The NPM, 18:49
the Nginx Proxy Manager, is already included, and you have everything under one roof. 18:54
That's why the whole thing is called CasaOS, and here you would then have the option, for example, 18:59
to update the individual apps, so you could say 'Check for updates' here. 19:04
In the settings you can even specify which 'day' you want to choose for the Nextcloud. 19:09
So these are 'release tags,' which you can actually specify here. 19:14
You could specify 'latest' or 'stable'. 'Stable' is preselected here, and then you'll always have 19:18
the most recent version. I hope you have fun replicating this interesting, somewhat 19:23
unique solution. It's not like many other self-hosting solutions. It 19:31
behaves a little differently. I think it's very well done. It has a nice dashboard, 19:36
and it uses modern software like Docker in the background. So you've 19:40
solved everything very cleanly, and I think it's a great idea. Give it a try, let me know in 19:46
the comments or in our community. To find out how to find it, simply go to 19:52
https://spacefun.ch, my website for my Linux distribution, and select the 19:58
Community option at the back, and you'll be there. Have fun replicating it. If you have any questions, 20:03
let me know, and I look forward to your visit. Bye and see you soon! 20:10

CasaOS bietet eine elegante und benutzerfreundliche Lösung, um einen Selfhosting-Server einzurichten. In diesem Video zeige ich dir Schritt für Schritt, wie du CasaOS auf deinem Linux-System installierst und konfigurierst. Als Beispiel installieren wir Nextcloud als persönliche Cloud-Lösung und den NGINX Proxy Manager, um den Zugriff aus dem Internet sicher zu gestalten.

CasaOS wurde von ZimaSpace entwickelt, einem Hersteller von Einplatinencomputern und Cloudlösungen, und besticht durch eine moderne, minimalistische grafische Oberfläche und eine App-Store-Funktion, mit der du viele Dienste per Docker einfach installieren kannst. Ich führe dich durch die Installation von CasaOS, die Einrichtung von Port-Forwarding auf deinem Router, sowie die Konfiguration wichtiger Dienste. Dabei erkläre ich auch, wie du Nextcloud über den Proxy sicher erreichbar machst und eigene SSL-Zertifikate mit Let's Encrypt einrichtest.

Ob du einen Heimserver, eine private Cloud oder eine schlanke Selfhosting-Umgebung aufsetzen möchtest – CasaOS macht es einfach und stilvoll. Schau dir das Video an, um unkompliziert loszulegen und deine Lieblingsanwendungen in einer modernen Umgebung zu betreiben.

Navigation

Video Player