Entwicklungsumgebung einrichten: Unterschied zwischen den Versionen

Zur Navigation springen Zur Suche springen
(ddev Plugin für phpStorm)
 
(18 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 8: Zeile 8:
# WSL2 unter Windows10 aktivieren und Ubuntu installieren:  
# WSL2 unter Windows10 aktivieren und Ubuntu installieren:  
## Aus dem Microsoft-Store: https://aka.ms/wslstorepage (verfügbar seit Nov. 2022)  
## Aus dem Microsoft-Store: https://aka.ms/wslstorepage (verfügbar seit Nov. 2022)  
## Manuell unter [https://learn.microsoft.com/de-de/windows/wsl/install#manual-installation-steps|Installieren von WSL]
## Manuell unter [https://learn.microsoft.com/de-de/windows/wsl/install#manual-installation-steps Installieren von WSL]
# DDEV für Windows installieren: [https://docs.ddev.com/en/stable/#system-requirements-windows-wsl2|Install DDEV WSL2]
# DDEV für Windows installieren: [https://docs.ddev.com/en/stable/#system-requirements-windows-wsl2 Install DDEV WSL2]


Danach kann Ubuntu gestartet werden (z.B. im “Such“-Menü nach Ubuntu suchen und anklicken). Beim erstmaligen Starten von Ubuntu müssen ein Benutzername und ein Passwort festgelegt werden.
Danach kann Ubuntu gestartet werden (z.B. im “Such“-Menü nach Ubuntu suchen und anklicken). Beim erstmaligen Starten von Ubuntu müssen ein Benutzername und ein Passwort festgelegt werden.
Zeile 35: Zeile 35:
sudo apt install php8.2 php8.2-mbstring php8.2-curl php8.2-xml php8.2-mysql
sudo apt install php8.2 php8.2-mbstring php8.2-curl php8.2-xml php8.2-mysql
sudo apt install mariadb-client</nowiki>
sudo apt install mariadb-client</nowiki>
Die docker-Installation ist ebenfalls notwendig. Die Anweisungen sind hier zu finden:
[https://docs.docker.com/engine/install/ubuntu/ docker.com]
Die ddev-Installation ist ebenfalls notwendig. Die Anweisungen sind hier zu finden:
[https://ddev.com/get-started/ ddev.com]


Sollten beim Installieren der Pakete Fehlermeldungen auftreten, ist es empfehlenswert, die Pakete einzeln zu installieren und auftretende Fehler/Abhängigkeiten einzeln zu lösen.
Sollten beim Installieren der Pakete Fehlermeldungen auftreten, ist es empfehlenswert, die Pakete einzeln zu installieren und auftretende Fehler/Abhängigkeiten einzeln zu lösen.
==== Nutzer in docker-Gruppe aufnehmen ====
Der aktuelle Benutzer muss in die Gruppe “docker” aufgenommen werden, sonst kann es passieren, dass dieser keinen Zugriff auf die Dockercontainer bekommt.
<nowiki>sudo usermod -aG docker $(id -un)</nowiki>
Die Änderung wird aber erst nach einem Ab-/Anmelden des Nutzers wirksam. Überprüft werden kann dies danach mittels
<nowiki>id</nowiki>
Hier muss die “docker”-Gruppe aufgelistet sein. Beispiel:
<nowiki>uid=1000(user) gid=1000(user) groups=1000(user),4(adm),24(cdrom),..,128(docker)</nowiki>
==== Eigenschaften der Docker Socket-Datei prüfen ====
Den folgenden Befehl ausführen, um die Eigenschaften der Datei anzeigen zu lassen:
<nowiki>sudo ls -la /var/run/docker.sock</nowiki>
Die Datei muss dabei ‘docker’ zugewiesen sein:
<nowiki>rw-rw---- 1 root docker 0 Dec 21 19:16 /var/run/docker.sock</nowiki>
Ist dies nicht der Fall, muss die Zugehörigkeit geändert werden:
<nowiki>chgrp docker /var/run/docker.sock</nowiki>




== 2. Sourcecode von Git laden ==
== 2. Sourcecode von Git laden ==
=== Github ===
=== Github ===
Zwar ist zum Herunterlden des Sourcecodes keine Account auf GitHub notwendig, aber zum Hochladen wird einer benötigt. Daher sollte zuerst einen Account auf https://github.com/ angelegt werden.
Zwar ist zum Herunterlden des Sourcecodes keine Account auf GitHub notwendig, aber zum Hochladen wird einer benötigt.
Daher zuerst einen Account auf https://github.com/ anlegen.




=== optional: SSH-Keys für Repositorys anlegen und in Github eintragen ===
=== optional: SSH-Keys für Repositorys anlegen und in Github eintragen ===
Der Zugriff auf github kann auf zwei Arten erfolgen, per Login und per SSH-Key. Letzterer Weg ist komfortabler und empfohlen.<br />
siehe https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/connecting-to-github-with-ssh<br />
siehe https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/connecting-to-github-with-ssh<br />
oder: https://www.heise.de/tipps-tricks/SSH-Key-fuer-GitHub-Repositories-einrichten-4627459.html
oder: https://www.heise.de/tipps-tricks/SSH-Key-fuer-GitHub-Repositories-einrichten-4627459.html
Zeile 62: Zeile 92:
git config --global user.email "your_email@youremail.com"</nowiki>
git config --global user.email "your_email@youremail.com"</nowiki>


Im Verzeichnis "home" einen Ordner "opencaching" (Name beliebig) anlegen. Dort folgenden Code ausführen. Dies legt einen Ordner mit dem Namen “oc-server3“ an, lädt den OC-Code aus deinem Github-Fork herunter und kopiert ihn in diesen Ordner.
Im Benutzerverzeichnis einen Ordner "opencaching" (Name beliebig) anlegen und hineinwechseln.
<nowiki>mkdir opencaching
cd opencaching</nowiki>
 
Dort folgenden Code ausführen. Dies legt einen Ordner mit dem Namen “oc-server3“ an, lädt den OC-Code aus deinem Github-Fork herunter und kopiert ihn in diesen Ordner.
  <nowiki>git clone git@github.com:<DeinGithubBenutzername>/oc-server3</nowiki>
  <nowiki>git clone git@github.com:<DeinGithubBenutzername>/oc-server3</nowiki>


Zeile 83: Zeile 117:
=== Weiterführende Informationen zu Git ===
=== Weiterführende Informationen zu Git ===
Diese sind unter anderem im [[Entwicklung/Git|OC-Wiki]] zu finden
Diese sind unter anderem im [[Entwicklung/Git|OC-Wiki]] zu finden


== 3. DDEV Entwicklungsumgebung initalisieren ==
== 3. DDEV Entwicklungsumgebung initalisieren ==
Zeile 90: Zeile 123:




==== Scripte einzeln ausführen ====
==== Scripte einzeln und (auch nur einmal!) ausführen ====
* ddev anstarten. Im Laufe dieses Prozesses wird die hosts-Datei automatisch angepasst.
* ddev anstarten. Im Laufe dieses Prozesses wird die hosts-Datei automatisch angepasst.
  <nowiki>ddev start</nowiki>
  <nowiki>ddev start</nowiki>


* Starten der Initialisierung der Testumgebung und der Datenbank:
* Starten der Initialisierung der Testumgebung und der Datenbank.
  <nowiki>ddev init</nowiki>
  <nowiki>ddev init</nowiki>


Zeile 102: Zeile 135:
   https://try-opencaching.ddev.site
   https://try-opencaching.ddev.site


* Das Passwort für den Benutzer ''root'' lautet ''developer''. Das Passwort der anderen Benutzer (Benutzernamen siehe Datenbank) lautet ''password''
Das Passwort für den Benutzer ''root'' lautet ''developer''. Das Passwort der anderen Benutzer (Benutzernamen siehe Datenbank) lautet ''password''
 
* Ein Mailpit steht nun über den Browser bereit (zumindest für den Legacy-Teil, für OC4 ist es noch nicht bestätigt) unter:
  https://opencaching.ddev.site:8026/




=== Entwicklungsumgebung ein weiteres Mal starten ===
=== Entwicklungsumgebung ein weiteres Mal starten ===
Eine bereits per 'ddev init' initialisierte Testumgebung kann gestartet werden mit:
<nowiki>ddev start</nowiki>
Die Testumgebung kann neugestartet werden mit:
Die Testumgebung kann neugestartet werden mit:
  <nowiki>ddev restart</nowiki>
  <nowiki>ddev restart</nowiki>
Zeile 117: Zeile 156:
  <nowiki>ddev delete --omit-snapshot</nowiki>
  <nowiki>ddev delete --omit-snapshot</nowiki>
Danach sind ein erneutes ''ddev start'' und ''ddev init'' notwendig.
Danach sind ein erneutes ''ddev start'' und ''ddev init'' notwendig.
=== von DDEV angelegte Objekte löschen und Projekte aus der globalen DDEV-Liste löschen ===
<nowiki>ddev clean --all</nowiki>
<nowiki>ddev stop --unlist opencaching</nowiki>


=== xdebug in der Entwicklungsumgebung starten ===
=== xdebug in der Entwicklungsumgebung starten ===
Zeile 162: Zeile 205:


[[Image:Testumgebung DB 04.png]]
[[Image:Testumgebung DB 04.png]]
=== Datenbank in phpStorm anzeigen ===
Ggf. kann es passieren, dass die Datenbank nicht automatisch in phpStorm angezeigt wird. Dazu muss eine neue MariaDB im Datenbank-Menü angelegt werden.
[[Image:Testumgebung DB 05.png]]
Im Anschluss sind die Daten wie im folgenden Screenshot einzutragen. User: “root“ Password: “root“
[[Image:Testumgebung DB 06.png]]




Zeile 193: Zeile 225:




=== hilfreiche Plugins für phpStorm ===
=== Datenbankanbindung in phpStorm aktivieren ===
Seit ddev als Umgebung genutzt wird, bietet sich das ddev-Plugin im phpStorm an. Es richtet z.B. den Zugang zur opencaching-Datenbank in der Testumgebung sowie weitere Einstellungen automatisch ein.
Seit ddev als Umgebung genutzt wird, bietet sich das ddev-Plugin im phpStorm an. Es richtet z.B. den Zugang zur opencaching-Datenbank in der Testumgebung sowie weitere Einstellungen automatisch ein.
Hierzu im phpStorm im Menü Datei/Einstellungen.. zum Abschnitt ''Plugins'' navigieren, im Suchfeld ''ddev'' eintippen und das Plugin installieren.
Hierzu im phpStorm im Menü Datei/Einstellungen.. zum Abschnitt ''Plugins'' navigieren, im Suchfeld ''ddev'' eintippen und das Plugin installieren.

Navigationsmenü