{"id":18948431,"url":"https://github.com/oxid-esales/docker-eshop-sdk","last_synced_at":"2026-03-27T12:30:17.791Z","repository":{"id":43141571,"uuid":"238421616","full_name":"OXID-eSales/docker-eshop-sdk","owner":"OXID-eSales","description":"Development Environment for OXID eShop based on docker","archived":false,"fork":false,"pushed_at":"2025-02-18T08:32:53.000Z","size":266,"stargazers_count":32,"open_issues_count":3,"forks_count":18,"subscribers_count":18,"default_branch":"master","last_synced_at":"2025-02-18T09:28:46.373Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Makefile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/OXID-eSales.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-02-05T10:16:42.000Z","updated_at":"2025-02-18T08:23:48.000Z","dependencies_parsed_at":"2023-02-15T16:45:24.876Z","dependency_job_id":"360aabf9-c754-4db5-b8c8-a7870decee92","html_url":"https://github.com/OXID-eSales/docker-eshop-sdk","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OXID-eSales%2Fdocker-eshop-sdk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OXID-eSales%2Fdocker-eshop-sdk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OXID-eSales%2Fdocker-eshop-sdk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/OXID-eSales%2Fdocker-eshop-sdk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/OXID-eSales","download_url":"https://codeload.github.com/OXID-eSales/docker-eshop-sdk/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239946902,"owners_count":19723017,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-08T13:13:30.652Z","updated_at":"2026-03-27T12:30:17.753Z","avatar_url":"https://github.com/OXID-eSales.png","language":"Makefile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Development base\n\nDocker based local environment that can be combined with https://github.com/OXID-eSales/docker-eshop-sdk-recipes for OXID eShop development.\n\nPhp and Npm users are synced with the current user so we will have all the rights to modify and access the content generated by using container commands.\n\n## What we have here\n\nFor the start:\n\n* Apache 2.4 (based on original httpd:2.4-alpine container)\n  * Some example SSL certificate added and HTTPS supported for https://localhost.local and https://oxideshop.local domains\n* PHP 7.4 / 8.0 / 8.1 / 8.2 fpm (based on oxidesales/oxideshop-docker-php containers which use the official php:x.x-fpm containers as a base) with:\n  * composer 2\n  * xDebug 3 with remote debug and profiler preconfigured\n  * error reporting enabled\n* MySQL 5.7 with adminer (original mysql container used)\n* Mailpit preconfigured to catch outgoing emails\n\nAdditionally, check services directory:\n* Npm container preconfigured, so you can easily regenerate grunt/gulp/other builder assets for modules/themes easier (based on node:latest)\n* Chrome based selenium service available, for running your selenium tests (based on selenium/standalone-chrome-debug)\n* Elasticsearch (also kibana to manage it) containers preconfigured\n* NGINX container preconfigured to be used with our NGINX module\n* Sphinx container which allows you to regenerate and improve our documentations locally much easier\n\n## Requirements\n\n* Docker (https://docs.docker.com/get-docker/)\n* Docker compose (https://docs.docker.com/compose/install/)\n* ``127.0.0.1 localhost.local`` - in your ``/etc/hosts`` file\n\n## Quick start\n\n```\ngit clone https://github.com/OXID-eSales/docker-eshop-sdk.git myProjectName\ncd myProjectName\n\n# get some information about whats possible\nmake help\n\n# setup rights and basic configuration files\nmake setup\n\n# run example script which prepares several example files for you to see this environment functionality\nmake example\n```\n\nAccess the website through the http://localhost.local\n* phpinfo shown on index page\n* example with database connection\n* example with email sending and catching it with mailpit\n    * run the composer install on php container first.\n\nAdminer is available via http://localhost.local:8080\n* Server: mysql\n* Credentials: root/root\n\nMailpit is available via http://localhost.local:8025/\n\n## Longer start\n\nThis example shows more precise configuration which can be used for your project. It is real usage flow:\n\n```\ngit clone https://github.com/OXID-eSales/docker-eshop-sdk.git myProjectName\ncd myProjectName\n\n# setup rights and basic configuration files\nmake setup\n\n# add php, mysql and apache services (they are grouped in one command, but can be added separately if needed)\nmake addbasicservices\n\n# add selenium container to the docker-compose\nmake file=services/selenium-chrome.yml addservice\n\n# ensure you have source directory available, as its configured as webroot by default\nmkdir source\n\n# start everything\nmake up\n\n# stop everything when its enough :)\nmake down\n```\n\n## Running php stuff\n\nWe can connect to the php container and do the stuff in there:\n```\nmake php\nphp -v\n```\n\nNote: ``make php`` is just an alias for ``docker-compose exec php bash``\n\nWe can call commands directly without connecting to the container:\n```\ndocker-compose run php php -v\n```\n\n## Running npm commands\n\n### Direct call\n```\ndocker-compose run node npm install bootstrap\n```\n\n### Connect to node container\n```\nmake node\n```\n\n### npm Install\nAssuiming you are already inside node container. You should run below command to install project dependencies.\n```\nnpm install\n```\n\n### Run Grunt\n\nAssuming that the Grunt has been installed and that the project has already been configured with a package.json then you should follow below steps after entering node container.\n 1. Change to the project's destination directory.\n 2. Install project dependencies with `npm install`\n 3. Run Grunt with command `npm run grunt`\n\n### Further Troubleshooting\nWhen running the `npm install` command to install your project’s dependencies, the install process may hang. At that time installation hangs without any output.\nTo resolve such issue run below-mentioned commands.\n```\nnpm config rm proxy\nnpm config rm https-proxy\nnpm config set registry https://registry.npmjs.org/\nnpm install\n```\n\n\n## Using Sphinx Container for Documentation Generation\n\nTo generate documentation from documentation repositories locally, we have a preconfigured Sphinx container that can be utilized.\n\nTo get started, ensure you import our Sphinx container service file using the following command: `make addsphinxservice`. Here's an example of how to use it:\n\n```\n# Clone shop developer documentation to source directory\ngit clone https://github.com/OXID-eSales/developer_documentation source/docs\n\n# Add Sphinx container\nmake docpath=./source/docs addsphinxservice\n```\n\nTo regenerate the documentation, simply execute the command `make generate-docs`. After doing this, you'll find the generated documentation in the `source/docs/build directory`.\n\n\n## Configurations\n\n### Apache\n\nCustom configuration file: ``containers/httpd/project.conf``.\n\n### SSL\nTo setup SSL for HTTPS or HTTP/2, checkout the README.md in ``containers/https/certs``.\n\n### PHP\n\nSelect PHP version to be used in docker-compose php container configuration.\nCustom configuration file for php settings: ``containers/php/custom.ini``.\n\n### Remote debugging with PHPSTORM\n\n* Configure the CLI Interpreter\n* Create a Server configuration and set mapping as source:/var/www/\n\n### Multiserver configuration\n\nThe SDK contains basic configuration for a load balancing setup using nginx. Information for creating such a setup can be found in the [sdk recipes repository](https://github.com/OXID-eSales/docker-eshop-sdk-recipes?tab=readme-ov-file#multiserver-configuration).\n\n## Issues and questions\n\nFeel free to make improvements for the SDK via Pull requests.\n\nAlso, if there are problems with using it, consider creating the Issue in the \"Issues\" section of this repository on github.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foxid-esales%2Fdocker-eshop-sdk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Foxid-esales%2Fdocker-eshop-sdk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foxid-esales%2Fdocker-eshop-sdk/lists"}