Linux Server setup

Visual Studio Code (mit SFTP Addon)

Es gibt jede Menge anderer Editoren und IDEs, die Du genauso gut verwenden kannst. Exemplarisch nehme ich Visual Studio Code (auch VS Code genannt). Die Mac Benutzer neigen evtl. eher zu Sublime Text. Voraussetzung ist, dass die IDE oder der Editor eine SFTP Verbindung aufbauen kann, um Dateien mit dem Server synchronisieren zu können.

Wir brauchen noch einen lokalen Arbeitsordner, den wir am besten jetzt anlegen. Ich nenne den www und lege ihn in den bereits erstellten linux-server Ordner ab (/linux-server/www).

Nach dem Download und der Installation, öffnen wir den www Ordner mit Visual Studio Code und speichern den "Arbeitsbereich" unter dem Namen www ab. Das erzeugt die Datei www.code-workspace. Der Speicherort ist frei, ich lege die Datei exemplarisch neben dem www Ordner ab. Eine gute Arbeitsweise kann auch sein, alle Workspace Dateien an einem Ort zu speichern. Das ist ganz praktisch, wenn an vielen Projekten parallel gearbeitet wird.

Arbeitsordner mit Visual Studio Code öffnen und als Workspace abspeichern (Screenshots wurden unter Windows erstellt. Unter MacOS und Linux den Pfad entsprechend anpassen).
VS Code: Ordner öffnen
VS Code: www-Projektordner
VS Code: Arbeitsbereich speichern
Projektordner und Workspace Datei

Die Workspace Datei können wir zukünftig direkt ausführen, was den letzten Arbeitsstand wiederherstellt. Und sie dient auch dazu, Einstellungen zu speichern, die nur das aktuelle Projekt betreffen. Sie hat also die gleiche Funktion wie Projektdateien von IDEs.

SFTP Addon

Das Addon SFTP bringt uns den Komfort, während der Entwicklung, lokale Dateien mit dem Server zu synchronisieren.

Diese Arbeitsweise ist nicht zu empfehlen, wenn mehrere Leute auf dem Server arbeiten!

Über die Schaltfläche "Erweiterungen" suchen wir nach "SFTP" und wählen dann aus der Liste das Addon vom Herausgeber "Natizyskunk". Anschließend können wir es installieren:

VS Code: SFTP Erweiterung installieren
Nach "SFTP" suchen und SFTP (Natizyskunk) installieren
SFTP Addon installiert

SFTP Verbindung zum Arbeitsbereich hinzufügen

Über die VS Code Befehlspalette erzeugen wir eine Konfigurationsdatei mit unseren Verbindungsdaten. Die Befehlspalette öffnet sich über das Zahnrad (links unten) oder mit der Tastenkombination STRG+SHIFT+P. Wir suchen nach "SFTP: Config" und bestätigen mit Enter. Das erzeugt und öffnet die Datei sftp.json:

zum Explorer wechseln
Befehlspalette über die Schaltfläche "Verwalten" öffnen
"SFTP:Config" auswählen
VS Code: sftp.json Datei

Die sftp.json sollte folgende Verbindungseinstellungen haben (basierend auf dieser Vorarbeit):

.vscode/sftp.json


{
  "host": "116.203.69.89",
  "port": 22123,
  "username": "tom",
  "protocol": "sftp",
  "privateKeyPath": "D:/linux-server/keys/private-key",
  "passphrase": true,
  "remotePath": "/var/www/",
  "uploadOnSave": true,
  "syncMode": "update",
  "ignore": [".vscode", ".git", ".DS_Store", "node_modules"]
}
 

Die Passphrase kann auch als Klartext hinterlegt werden. Es ist jedoch sinnvoll "passphrase": true zu setzen, wodurch beim ersten Verbindungsversuch die Passphrase abgefragt wird.

Wichtig ist es einen remotePath anzugeben, da wir sonst mit dem Root-Verzeichnis synchronisieren würden (was übrigens ohne dem Schlüsselwort sudo gar nicht erlaubt wäre). Die Einstellung "uploadOnSave": true bewirkt, dass eine Datei, nach dem Abspeichern gleich hochgeladen wird.

Alle SFTP Funktionen können über das Kontextmenü (rechte Maustaste auf Dateien oder Ordner) ausgeführt werden. Da wir schon Ordner und Dateien auf dem Server haben, sollte wir sie erst herunterladen:

Serverdateien über das Kontextmenü herunterladen
Passphrase für den privaten Schlüssel
Lokale Daten nach dem herunterladen

Alternativ hätten wir auch statt "Download Folder" die Dateien mit "Sync Remote -> Local" bekommen können.

Wichtig zu wissen ist: Wenn lokal neue Dateien oder Ordner angelegt werden, müssen sie manuell hochgeladen werden. Zum Beispiel per Kontextmenü mit Upload oder Sync Local -> Remote. Danach werden Dateien durch die Option uploadOnSave automatisch aktualisiert.

SFTP Verbindung testen

Zum Testen kannst die vorhandene index.htm ändern, um zu schauen, ob alles richtig eingestellt ist:

"uploadOnSave" testen

Weitere nützliche Einstellungen

Folgende Einstellungen in VS Code sind optional und vor allem eine persönliche Vorliebe.

Die Einstellungen öffnen wir zum Beispiel über "Bearbeiten/Einstellungen oder mit dem Shortcut STRG+,. Die einzelnen Optionen lassen sich mit einer Einstellungs-ID (z. B. editor.insertSpaces) ganz schnell finden.

Tabs anstelle von Leerzeichen

Grundsätzlich sollte ein Team sich einigen, ob Tabs oder Leerzeichen für den Einzug verwendet wird. Das erleichtert die Arbeit mit Git. Tabs bieten den Vorteil, dass jeder die Tab-Größe für sich passend einstellen kann ohne das Dokument zu ändern.


editor.insertSpaces: disable
 

Tab-Größe

Mit einer kleinen Tab-Größe lässt sich besser auf kleinen Bildschirmen, beispielsweise einem Notebook, programmieren.


editor.tabSize: 2
 

Standard Zeichensatz utf-8

Eine neu angelegte Datei bekommt so automatisch die Zeichenkodierung utf-8.


files.encoding: utf8
 

Zeichensatz eines Dokuments erraten

Das verhindert eine Datei mit einer falschen Kodierung zu öffnen und gegebenenfalls falsch abzuspeichern.


files.autoGuessEncoding: true
 

Klammerpaare einfärben

Klammerpaare bekommen unterschiedliche Farben, was den Code leserlicher macht.


editor.bracketPairColorization.enabled: true
 

Leere Ordner im Explorer nicht zusammenfassen

Ist wirklich Geschmackssache. Ich bevorzuge die Ansicht einer Baumstruktur auch wenn ein Ordner leer ist.


explorer.compactFolders: disable
 

git Ordner im Explorer anzeigen

Dateien eines ".git" Ordners sollten ohnehin nicht manuell bearbeitet werden, daher blende ich diese aus.


"files.exclude": {
	"**/.git": false,
}
 

Weitere nützliche Addons

Für die Webentwicklung empfehle ich folgende Addons:

Datenbank Management Addons: