Autor Thema: [SSH-TUTORIAL] Shopware 5 CLI Konsole  (Gelesen 17211 mal)

Offline Rico Rothenburger

  • Newbie
  • *
  • Beiträge: 2
    • Profil anzeigen
[SSH-TUTORIAL] Shopware 5 CLI Konsole
« am: 08.11.2015 22:24 »
Einige Shopware Betreiber haben sich sicherlich schon einmal gefragt, was die Shopware CLI Konsole alles so kann. Möglich, dass Sie bisher auch noch nichts von dieser Möglichkeit der Administration gehört haben. Hier zeigen wir Ihnen was Sie damit machen können und wie Sie dieses Tool nutzen.

Shopware bietet seit der Version 4.2 eine Symfony2 Konsole über SSH an, worüber man den eigenen Shop per SSH warten kann. Weitere nützliche Tipps lassen sich auch direkt bei Shopware unter den folgenden Link finden: http://community.shopware.com/Shopware-CLI-Nuetzliche-Befehle–Tricks_detail_1990.html

Über die Shopware 5 CLI Konsole lassen sich vor allem rechenintensive Prozesse starten, wie zum Beispiel die Thumbnail-Generierung oder die Datenimporte oder die Datenexporte. Viele Aufgaben, die im Browser entweder zu Problemen führen könnten oder dessen Fehlerauswertung erschwert wird. Denkbar wären auch automatisierte Prozesse die sich per Cronjob realisieren lassen. Durch diese Kombination lassen sich auch sehr komplexe Aufgaben kombinieren, die zum Beispiel mit einem Bash-Script gesteuert werden.

Da Sie die die CLI Konsole nur über SSH bedienen können, erkläre ich Ihnen in diesem Tutorial, wie Sie zu der Konsole von Shopware gelangen und wie Sie diese ausführen können.

Hier ein Einblick über die Kommandos von der Shopware CLI Konsole (Shopware 5):
Available commands:
  help                            Displays help for a command
  list                            Lists commands
 dbal
  dbal:import                     Import SQL file(s) directly to Database.
  dbal:run-sql                    Executes arbitrary SQL directly from the command line.
 orm
  orm:clear-cache:metadata        Clear all metadata cache of the various cache drivers.
  orm:clear-cache:query           Clear all query cache of the various cache drivers.
  orm:clear-cache:result          Clear all result cache of the various cache drivers.
  orm:convert-d1-schema           Converts Doctrine 1.X schema into a Doctrine 2.X schema.
  orm:convert-mapping             Convert mapping information between supported formats.
  orm:convert:d1-schema           Converts Doctrine 1.X schema into a Doctrine 2.X schema.
  orm:convert:mapping             Convert mapping information between supported formats.
  orm:ensure-production-settings  Verify that Doctrine is properly configured for a production environment.
  orm:generate-entities           Generate entity classes and method stubs from your mapping information.
  orm:generate-proxies            Generates proxy classes for entity classes.
  orm:generate-repositories       Generate repository classes from your mapping information.
  orm:generate:entities           Generate entity classes and method stubs from your mapping information.
  orm:generate:proxies            Generates proxy classes for entity classes.
  orm:generate:repositories       Generate repository classes from your mapping information.
  orm:info                        Show basic information about all mapped entities
  orm:mapping:describe            Display information about mapped objects
  orm:run-dql                     Executes arbitrary DQL directly from the command line.
  orm:schema-tool:create          Processes the schema and either create it directly on EntityManager Storage Connection or generate the SQL output.
  orm:schema-tool:drop            Drop the complete database schema of EntityManager Storage Connection or generate the corresponding SQL output.
  orm:schema-tool:update          Executes (or dumps) the SQL needed to update the database schema to match the current mapping metadata.
  orm:validate-schema             Validate the mapping files.
 sw
  sw:clone:category:tree          Duplicates the category tree.
  sw:cron:list                    Lists cronjobs.
  sw:cron:run                     Runs cronjobs.
  sw:es:analyze                   Helper tool to test own analyzers.
  sw:es:backlog:clear             Remove backlog entries that are already synchronized.
  sw:es:backlog:sync              Synchronize events from the backlog to the live index.
  sw:es:index:cleanup             Remove unused Elasticsearch indices.
  sw:es:index:populate            Reindex all shops into a new index and switch the live-system alias after the index process.
  sw:es:switch:alias              Allows to switch live-system aliases.
  sw:firstrunwizard:disable       Disable the first run wizard.
  sw:firstrunwizard:enable        Enable the first run wizard.
  sw:generate:attributes          Generates attribute models.
  sw:media:cleanup                Collect unused media move them to trash.
  sw:media:migrate                Migrate images to new structure
  sw:plugin:activate              Activates a plugin.
  sw:plugin:config:list           Lists plugin configuration.
  sw:plugin:config:set            Sets plugin configuration.
  sw:plugin:deactivate            Deactivates a plugin.
  sw:plugin:delete                Deletes a plugin.
  sw:plugin:install               Installs a plugin.
  sw:plugin:list                  Lists plugins.
  sw:plugin:refresh               Refreshes plugin list.
  sw:plugin:reinstall             Reinstalls the provided plugin
  sw:plugin:uninstall             Uninstalls a plugin.
  sw:plugin:update                Updates a plugin.
  sw:product:feeds:refresh        Refreshes product feed cache files.
  sw:rebuild:category:tree        Rebuild the category tree
  sw:refresh:search:index         refreshes and regenerates the search index
  sw:settings:label:find:missing  Dump missing settings labels from the database into php arrays files
  sw:snippets:find:missing        Find missing snippets in the database and dumps them into .ini files
  sw:snippets:remove              Remove snippets from the database for a specific folder
  sw:snippets:to:db               Load snippets from .ini files into database
  sw:snippets:to:ini              Dump snippets from the database into .ini files
  sw:snippets:to:sql              Load snippets from .ini files into sql file
  sw:snippets:validate            Validates .ini files containing snippets
  sw:store:download               Downloads a plugin from the community store
  sw:store:list                   List licensed plugins.
  sw:store:list:domains           List connected domains.
  sw:store:list:integrated        List all integrated plugins.
  sw:store:list:updates           Lists updates for installed plugins.
  sw:theme:cache:generate         Generates theme caches.
  sw:theme:create                 Creates a theme.
  sw:theme:dump:configuration     Dumps the theme configuration into json files
  sw:theme:initialize             Initializes themes. Enables responsive theme for the default shop.
  sw:thumbnail:cleanup            Deletes thumbnails for images whose original file has been deleted.
  sw:thumbnail:generate           Generates a new Thumbnail.
  sw:warm:http:cache              warm up http cache swaglicense
  swaglicense:import              Import licenses from file.
  swaglicense:list                Lists available licenses.

Diese Shopware CLI Konsole lässt sich auf vielen Profihostpaketen wie folgt aufrufen:

cd ~/{shopware root}/bin
/usr/local/php5.6/bin/php -z /usr/local/php_extensions/php5.6/ioncube.so console

oder

/usr/local/php5.6/bin/php -z /usr/local/php_extensions/php5.6/ioncube.so ~/{shopware root}/bin/console

Möchten Sie lieber php5.5 anstatt von php5.6 nutzen, führen Sie einfach folgenden Code aus:

/usr/local/php5.5/bin/php -z /usr/local/php_extensions/php5.5/ioncube.so ~/{shopware root}/bin/console

Das geht natürlich mit jeder anderen PHP Version, die von Profihost angebotenen wird.

Wenn Sie jetzt die Thumbnail Generierung starten wollen, müssen sie folgenden Code hinten anhängen (sw:thumbnail:generate):

/usr/local/php5.6/bin/php -z /usr/local/php_extensions/php5.6/ioncube.so ~/{shopware root}/bin/console sw:thumbnail:generate

Wenn es zu dieser kleinen Anleitung Verbesserungsvorschläge und Anregungen gibt, füge ich diese gern hinzu.
« Letzte Änderung: 18.02.2018 12:44 von Rico Rothenburger »

Mirko Lehmann - Profihost

  • Gast
Re: [SSH-TUTORIAL] Shopware 5 CLI Konsole
« Antwort #1 am: 10.11.2015 09:34 »
Hallo Rico!

Herzlich Willkommen und vielen Dank für die tolle Anleitung!  :)

Offline A.Büggeln - Profihost

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 508
    • Profil anzeigen
Re: [SSH-TUTORIAL] Shopware 5 CLI Konsole
« Antwort #2 am: 30.03.2016 10:18 »
Ein Kunde meldete uns, dass bei Nutzung der Option "-z /pfadzuIoncube" ein Segmentation Fault auftritt.

Sofern der IonCube Loader hier nicht zwingend benötigt wird, kann man den Fehler durch Weglassen dieser Option vermeiden.
Mit freundlichen Grüßen
Andreas Büggeln
Profihost Team

Impressum

Offline flakado

  • Newbie
  • *
  • Beiträge: 1
    • Profil anzeigen
Re: [SSH-TUTORIAL] Shopware 5 CLI Konsole
« Antwort #3 am: 09.06.2016 14:49 »

Diese Shopware CLI Konsole lässt sich auf vielen Profihostpaketen wie folgt aufrufen:

cd ~/{shopware root}/bin
/usr/local/php5.6/bin/php -z /usr/local/php_extensions/php5.6/ioncube.so console

oder

/usr/local/php5.6/bin/php -z /usr/local/php_extensions/php5.6/ioncube.so ~/{shopware root}/bin/console


Mir ist nicht ganz klar wo genau ich das eingeben muss. In die Browser Zeile? Per PuTTY auf den Server Verbinden?