Shopware ontwikkelomgeving opzetten

Met behulp van deze blog kan je zelf een ontwikkelomgeving opzetten in Shopware. Zo kan je content vóór publicatie controleren en/of wijzigen op inhoud en uiterlijk. Hieronder behandelen wij de te doorlopen stappen. In de handleiding gaan we ervan uit dat Shopware draait op “voorbeeld.nl”, en de staging komt te draaien onder “voorbeeld.nl/staging”

Aanmaken van een database

Het eerste wat we moeten doen is het aanmaken van een nieuwe database en user:

1. Log in op cPanel door jouw domeinnaam in te voeren gevolgd door /cpanel. Bijvoorbeeld www.domeinnaam.nl/cpanel

2. Kies vervolgens onder Databases voor MySQL Database Wizard

3. Voor de nieuw database, voeren we de naam staging in.

4. Klik op de knop Volgende stap

 

Maak een database

5. Voer ook bij de gebruikersnaam weer staging in, genereer een nieuw wachtwoord door op het knopje Wachtwoord genereren te klikken. Noteer het wachtwoord(!).

 

Maak databasegebruikers

6. Klik op de knop Gebruiker maken.

7. Vink bij stap 3 de checkbox ALLE Rechten aan.

 

Voeg een gebruiker toe aan de database

8. Klik op de knop Volgende stap en vervolgens op Terug naar startpagina.

Inloggen op SSH

Voor het volgen van de volgende stappen is het gebruik van SSH te adviseren. Bijna alle handelingen zijn namelijk via SSH uit te voeren. Het kan ook via andere methoden, maar die zijn erg omslachtig. Voor het inloggen op SSH kun je deze handleidingen volgen:

1. SSH verbinden met Windows
2. SSH verbinden met Mac OS X
3. SSH verbinden met Linux

Het kopiëren van de database

De volgende stap is het kopiëren van de data van de productieomgeving naar de ontwikkelingomgeving.

1. Log in met SSH, via de handleidingen in de stap hierboven, op de server van jouw domeinnaam.

2. Navigeer naar de productieomgeving (in de meeste gevallen is dit de public_html):

cd public_html/

3. Controleer met het commando pwd of je in de juiste map werkt. Standaard zou dit de public_html moeten zijn.

4. Maak de map aan waar we de staging omgeving in gaan zetten:

mkdir staging

 

Public HTML

5. Kopieer alle gegevens uit de map waar Shopware is geïnstalleerd, die meestal in de public_html map staat, naar de staging map:

cp -Rf * staging/

cp .htaccess staging/

Let op: De waarschuwing “cp: cannot copy a directory, ‘staging’, into itself, ‘staging/staging’” is normaal en kan veilig genegeerd worden.

Hierna zijn alle bestanden gekopieerd naar de ontwikkelomgeving en kunnen we door met het kopiëren van de database.

Het kopiëren van de database

1. Voor de volgende stap, moet je de gegevens van de database voor de productieomgeving weten. Als je de gegevens niet meer hebt zijn deze terug te vinden in het bestand config.php.

Het bestand is te bekijken met een tekst-editor als nano, of met cat <bestandsnaam>:

 

Kopiëren van de database

2. Vervolgens moeten we de gegevens van de database van de productieomgeving kopiëren naar de database van de ontwikkelingomgeving. Deze actie voeren we ook via SSH uit.

Allereerst gaan we de database van de productieomgeving exporteren, hiervoor moet het volgende commando uitgevoerd worden:

cd ..
mysqldump -u database_username -p database_naam > database_staging.sql

Hierbij vervang je database_username door de gebruikersnaam, en database _naam door de databasenaam.

Let op: de export van jouw database bevat allerlei gevoelige gegevens. Wij raden af de mysql-dump in de public_html te maken of daar neer te zetten. Daar is hij namelijk door iedereen te downloaden!

Het exporteren kan een paar seconden tot een enkele minuten duren, afhankelijk van de grootte van jouw database, je kunt hier gewoon op wachten. De export van jouw database staat hierna in het bestand database_staging.sql (tenzij je dit aangepast hebt).

4. Zodra het klaar is, kan je deze gegevens importeren in de staging database met het onderstaande commando:

mysql -u staging_user -p staging_database < database_staging.sql

Hier vervang je 'staging_user' met de eerder aangemaakte gebruikersnaam, en 'staging_database' met de database-naam zoals in stap 1 is aangemaakt. Als je de stappen nauwkeurig gevolgd hebt, geldt dat beide hetzelfde zijn: cpaneluser_staging

5. Nadat je op enter hebt gedrukt moet het wachtwoord worden ingevuld.

 

Kopiëren van de database 2

Updaten van de configuratie

Nu moeten we in de staging-omgeving de configuratie updaten:

1. Open eerst de map van de staging-omgeving:

cd public_html/staging

2. Open de config.php met jouw favoriete tekstbewerker.

3. Vervang de waarden in dit bestand met de gegevens uit de database voor onze staging database.

 

Kopiëren van de database 3

Wijzigen database voor staging:

Nu moeten we de URL bijwerken voor onze ontwikkelomgeving:

1. Log in op het Controlpanel en klik op het phpMyAdmin icoon

Databases

2. Klik in de navigatiekolom aan de linkerkant, op de staging database en vervolgens op de tabel s_core_shops.

Core_shops

4. Er dienen twee waardes aangepast te worden: host en base_path. Bij host typ je: voorbeeld.nl/staging in. De waarde base_path moet je leeg laten.

5. Na deze wijzigingen moet de cache geleegd worden voor de staging omgeving. Controleer met pwd of je in de correct map werkt, en voer vervolgens het onderstaande commando uit:

php bin/console sw:cache:clear

Staging

De ontwikkelomgeving is nu te bereiken op http://voorbeeld.nl/staging

Problemen bij het opzetten?

Wij schrijven deze handleidingen om het onze klanten eenvoudig te maken. Wij willen wel benadrukken dat dit geen uitbreiding van onze dienstverlening is en wij dus geen support hierop geven. Mocht je de ontwikkelomgeving door ons willen laten opzetten dan is dit mogelijk. Wij rekenen € 65,00 (Excl. 21% BTW) eenmalig voor het opzetten van de ontwikkelomgeving. Een aanvraag voor het opzetten van de ontwikkelomgeving kun je mailen naar support@skyberate.nl.

Shopware tutorials

Ben je op zoek maar meer informatie over Shopware, kijk dan ook eens op de community site van Shopware, hier zijn verschillende handleidingen (tutorials) in het Engels en Duits beschikbaar.

Contact

Mocht je meer willen weten over Shopware en de oplossingen die wij kunnen bieden op het gebied van hosting voor Shopware, neem dan contact met ons op of bekijk onze shopware Hosting pagina. We adviseren je graag over de beste oplossing voor jouw situatie.

in Shopware
Heeft deze handleiding jouw vraag beantwoord?