Skip to content

Aliasse und Dampfloks

Erstellt am23. Mai 2023 at 04:02 PM

Zuerst möchte ich das Wichtigste klären. Genau richtig - der Duden sagt der Plural von Alias ist Aliasse. Es geht aber auch ‘die Alias’. Außerdem ist sowohl ‘der Alias’ als auch ‘das Alias’ richtig. Man kann also (fast) nichts falsch machen. Doch wie bin ich eigentlich auf dieses Thema gekommen? Ich wundere mich regelmäßig, dass mein Befehl docker compose-up, mit dem man die in der docker-compose.yml definierten Docker-Container gleichzeitig erzeugen und starten lassen kann, “nicht funktioniert”. Dann dauert es eine Weile, bis ich merke, dass ich das Minus an die falsche Stelle gesetzt habe. Es muss zwischen ‘docker’ und ‘compose’ stehen (docker-compose up).

Ich klagte meinem Kollegen mein Leid und er meinte “Erstelle dir doch einfach einen Alias und ersetze das Minus durch ein Leerzeichen”. Das wäre für mich eine kleine, aber sehr hilfreiche Arbeitserleichterung. Ich bin ein Fan davon, mir meine Arbeitsumgebung so einzurichten, dass meine Tippfehler zum Gesetz werden und ich nicht aus meinen Fehlern lernen muss.

Im Wiki der Seite https://wiki.ubuntuusers.de/alias/ steht ein Alias ist ein “Kurzname für Befehlsaufrufe” (für die Profis: in der Man page der Bash gibt es weitere Informationen zum alias-Befehl). Wenn du nur den Befehl eingibst, kannst du dir zunächst alle bereits definierten Aliasse anzeigen lassen. Setzt du dahinter den Alias, erfährst du, welcher Befehl sich hinter dem Alias verbirgt. Nach dem Schema alias Kurzname='Befehl' kann ein neuer Alias bzw. Kurzname für einen Befehl festgelegt werden.

So habe ich herausgefunden, dass ls eigentlich ein Alias für ls --color=auto ist.

Mini-Exkurs

Für den Befehl ls gibt es bereits eine sehr schönes Programm, das zumindest den Ärger über das Vertippen etwas schwinden lässt. sl zaubert eine Dampflokomotive auf deine Konsole, die von rechts nach links vorbei dampft. Ob man sich so das Vertippen abgewöhnen kann, ist die Frage. Ich möchte ja immer gerne die Dampflok sehen. (—> sudo apt-get install sl)

Zurück zu meinem Problem-Befehl docker-compose up. Ein Alias sollte eigentlich eine kürzere Form des Befehls sein. Deshalb weiß ich nicht, ob ich das Minus einfach durch ein Leerzeichen ersetzen kann. Auf den ersten Blick scheint ein Alias aus mehreren Wörtern nicht möglich zu sein. Die andere Idee war es, das Leerzeichen mit einem Minus zu ersetzen: alias docker-compose-up='docker-compose up'. Das ist schon das, wonach ich gesucht habe. Leider funktioniert das nur temporär innerhalb des Tabs in der Konsole. Es gilt also den neuen Alias in die .bashrc-Datei zu schreiben und somit fest und dauerhaft zu definieren. Voilà!

Ich habe Docker compose über die Standard-Linux Bibliothek installiert und eine nicht ganz aktuelle Version bekommen. Ab Version 2 sieht der Befehl wieder anders aus (docker compose up). Ein weiterer Vorteil für das Setzen von Aliassen (man gewöhnt sich nicht an das Wort…): Wenn du auf verschiedenen Rechnern arbeitest mit verschiedenen Docker-Versionen, musst du dir nicht mehr den Kopf darüber zerbrechen, wie denn nun der richtige Befehl aussieht.

Bei noch mehr Interesse an docker-compose versus docker compose hier Details, inwieweit sich Compose V1 und Compose V2 unterschieden -> https://docs.docker.com/compose/migrate/#docker-compose-vs-docker-compose.

PS Für eine bessere Übersicht empfiehlt es sich eine eigene Datei à la ~/.bash_aliases anzulegen. In diesem Fall muss man dafür sorgen, dass sie dann auch von der .bashrc mit eingelesen wird.