Docker Container für OXID 6

oxid 6 in 5 min? kein problem! :wink:

  • repo runterladen
  • container starten
  • oxid6 läuft

viel spaß …

3 Likes

Danke für die Arbeit!

Selber habe ich in der .env Datei noch die Zeile

PWD=/home/indianer3c/Entwicklung/docker_oxid6

ergänzt.

nutzt du zufällig windows? weil da gibts die variable nicht hat sich logischerweise herausgestellt. :wink:
oder wolltest du nur ein anderes verzeichnis für die daten?

Ich nutze elementary OS 0.4.1 Loki (64-bit) Auf Basis von “Ubuntu 16.04.3 LTS” Linux 4.4.0-98-generic GTK+ 3.18.9 und dort gibt es die Variable PWD auch nicht deswegen habe ich sie gesetzt, weil sonst nimmt Docker das Haupt-Verzeichnis / und das möchte ich nicht. Dateien sollen in PHPStorm im Projektverzeichnis liegen :slight_smile:

ah ok, danke für die info.

Ich hoffe, ich habe alles richtig installiert…
Es erschien: OXID bootstrap completed!

Wenn ich nun http://oxid6.localhost aufrufe, erscheint:
Diese Website ist nicht erreichbar
oxid6.localhost hat die Verbindung abgelehnt.

Firewall etc. deaktiviert.

Wo befinden sich die Shop Dateien etc.zum ausprobieren und verändern?
Ich bin sehr interessiert - leider aber ungeübt und “unwissend”.
Ich brauche Hilfe für Anfänger.

was passiert denn wenn du http://localhost aufrufst?

im data/www/ verzeichnis

Leider auch nicht.
Diese Website ist nicht erreichbar
localhost hat die Verbindung abgelehnt.

laufen deine container überhaupt? was sagen die docker compose logs?

Hallo zusammen!

5 Minuten?
Damit der Docker-Container theoretisch funktionieren könnte, musste ich zunächst die Docker Toolbox installieren, da wir noch mit w7 arbeiten.
Spät im Installationsvorgang kam es dann zu Problemen (siehe Screenshot).

Ich vermute, das hängt mit Git zusammen, da ich gestern in ähnlichen Zusammenhängen auch schon Zugriffsprobleme auf dem Remote-Server hatte (fatal: unable to access ‘https://github.com/proudcommerce/docker-oxid6.git/’: Failed to connect to github.com port 443: Bad access > jeweils identisch aus der Git GUI oder der Git bash).

Was kann ich machen, um diese Probleme in den Griff zu bekommen?
Mich frustriert das alles sehr, völlig unbeleckt in Sachen IT bin ich nicht, aber es kann doch einfach nicht sein, dass man ab einer bestimmten Ebene nur noch als Supernerd durchs Leben kommt, zumal es hier ja nicht um Kinkerlitzchen geht, sondern um ein essentielles Upgrade, bei dem gefühlt alles incl. der Workflows neu erfunden wurde.

Na gut, wenn das mit Docker nicht klappt, gibt es ja noch den Ansatz von Marco, und wenn das auch nicht funktioniert, leg ich mir die Karten. Ich werde sicher nicht der/die Einzige sein.

Sorry.

Danke trotzdem schon mal und Gruß aus dem trüben Nord-Berlin,
Steffen

p.s.: Ich sehe grad eher zufällig in der Git GUI, dass dort kein OpenSSH-Public Key hinterlegt ist. Das könnte die Zugriffsprobleme erklären. Ich hatte bislang aber nirgends gesehen, dass dies erforderlich ist, um Git nutzen zu können, um es deshalb auch gar nicht auf dem Schirm gehabt (immer vorausgesetzt, dass unser Problem tatsächlich hier seine Ursache hat).

5 minuten wenn man docker drauf hat (hat das nicht mittlerweile jeder entwickler?) :wink:

das muss irgend ein lokales/windows problem sein, da kann ich dir leider nicht weiterhelfen, sorry. aber … Failed to connect to github.com port 443: Bad access - Google Suche

um von github zu clonen muss man keine speziellen keys hinterlegen

Danke.

Schade, ich hatte gehofft, dass der Punkt mit dem fehlenden Key die Sache erledigen würde. Falls ich für das Problem ein Lösung finde, werde ich sie hier posten, dann hätten ggf. auch andere etwas davon.

Schönes WE,
Steffen

p.s.: Ach, nur so - ich weiß schon, was eine Suchmaschine ist. :slight_smile:
Allerdings bin ich nicht mit ‘Don’t be evil’-Google unterwegs, sondern nutze ixquick / startpage. Dort habe ich allerhand Fundstellen vor allem von stackoverflow gelistet bekommen, aber noch nichts, mit dem ich die Kuh vom Eis gebracht hätte.

viele wissen das, aber sind zu faul das zu nutzen. daher beschuldigt man lieber erstmal “nutz doch ne suchmaschine” wäre dabei gestanden dass du schon gesucht hast, hätte ich mir den link natürlich erspart :wink:

Es klappt nicht. Kern des Problems sind fortwährende Fehler, wenn ich mittels Git auf Remote Server zugreifen muss. Ich habe eine Menge probiert, aber ich führe das jetzt nicht aus, weil ich so nen Hals habe, dass ich fürchte, mir würde ganz häßlich der Kragen platzen, und das wäre nicht konstruktiv.

Fünf Minuten!

Gruß,
Steffen

Okay, ich glaub, das führt zu nix. Lass uns andere Optionen ausprobieren, Steffen. Aber nicht hier im Topic :wink:

Danke für das Setup!
Funktionierte gut.

Ich hab darauf aufbauend auch mal eins gebaut:

Statt docker-compose up gibts dort ein docker.sh script, was die container hochfährt und:

  • die host user id auf die www-data user id im container mapped, damit die files demselben user gehören
  • man wird in den container als user www-data eingeloggt. damit kann man dann composer im container als nicht root ausführen. Hilft auch bei file permissions.
  • mysql config my.cnf als volume

Vielleicht sind ja ein paar Ideen dabei, die allen helfen.

PS: ist nur auf linux getestet

Cool, hab ich mir mal angeschaut. Hättest aber zumindest nen Fork davon machen können wenn primär alles “kopiert” ist …

Stimmt, kann ich noch machen.

Vielen Dank für das Projekt! Hilft sehr gut bei der lokalen Entwicklung und läuft soweit auf Windows und Mac ohne Probleme.

Da ich bisher mit MailHog nichts zu tun hatte - muss ich da noch weiter etwas Konfigurieren, dass der lokale Shop E-Mails verschickt bzw diese in MailHog landen? Habe nur in diesem Blog etwas zu MailHog gefunden bei dem zusätzliche Tools im Dockerfile installiert werden müssen: https://blog.philipphauer.de/test-mail-server-php-docker-container/ - habe ich auch gemacht, dann passiert leider trotzdem nichts weiter und die Fehlermeldung “Fehler beim Versenden - bitte E-Mail-Adressen überprüfen.” taucht z.B. beim Kontak-Formular auf.

Hast du mir einen Tipp was ich in den (Shop) Einstellungen noch konfigurieren muss damit das mitgelieferte MailHog seinen Zweck erfüllt?

Eigentlich wird hier der SMTP-Host gesetzt, damit funktioniert auch Mailhog:

Ho!

ich verwende Windows 10 Pro, die aktuelle Docker Version, WSL Ubuntu 18 und versuche den Container zu verwenden.

EDIT: Ich habe die Fragen mal Fett markiert, weil der Post so unübersichtlich wurde.

Nun hab ich zwei Probleme, die PE-Version kann nicht mit docker-composer up -d installiert werden, weil die Authentifizierung nicht klappt. Dazu habe ich in der Datei 010-oxid.sh einfach composer install hinterlegt und meine composer.json + auth.json in den Root gelegt.

Die Verzeichnise data/www/ & data/mysql musste ich von Hand anlegen, damit es funktioniert.

Jetzt kommt das Problem, welches ich nicht lösen kann:

 - Installing oxid-esales/oxideshop-pe (v6.2.1): Downloading (connecting...)Downloading (0%)           Downloading (5%)Downloading (10%)Downloading (15%)Downloading (20%)Downloading (25%)Downloading (30%)Downloading (35%)Downloading (40%)Downloading (45%)Downloading (50%)Downloading (55%)Downloading (60%)Downloading (65%)Downloading (70%)Downloading (75%)Downloading (80%)Downloading (85%)Downloading (90%)Downloading (95%)Downloading (100%)
 2018-11-26T13:17:28.584943400Z 
                                                                                                                    
 [InvalidArgumentException]                                                                                            
 Invalid argument, /var/www/html/vendor/oxid-esales/oxideshop-pe/e5567adf32d55fb6209825b7a315b679.tar cannot be found 

Innerhalb der Docker-Container ist Composer nicht in der Lage .tar-Dateien zu entpacken. Sobald Composer PharData::extractTo (fopen) ausführt, wird die .tar-Datei gelöscht. Ich hab dazu selbst ein privates Repo angelegt mit einer .tar-Datei, bei der passiert exakt das selbe.

Hat das Problem evt. noch wer?

BTW. wenn ich composer install in der Konsole (Auf WSL oder Windows Git Bash) ausführe, funktioniert die Installation perfekt. Allerdings funktioniert die Datenbank nicht:

ERROR 1130 (HY000): Host 'xxx.xxx.xx.x' is not allowed to connect to this MySQL server

Kann sich darauf jemand einen Reim bilden?

Wenn ich dann alles installiert habe, sehe ich das folgende Bild - ich glaube langsam es wäre einfacher Windows komplett durch Ubuntu zu ersetzen :confused:

Danke & LG