Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: magento/magento2
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 2.4-develop
Choose a base ref
...
head repository: Imagination-Media/magento2-codespaces-example
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 2.4-develop
Choose a head ref
  • 9 commits
  • 11 files changed
  • 2 contributors

Commits on Apr 15, 2025

  1. Copy the full SHA
    59551e3 View commit details
  2. Adjust run services

    igor-imaginemage committed Apr 15, 2025
    Copy the full SHA
    02b4d19 View commit details
  3. Test changes

    igor-imaginemage committed Apr 15, 2025
    Copy the full SHA
    78be7ff View commit details
  4. Copy the full SHA
    56168d2 View commit details
  5. Copy the full SHA
    e97f9c8 View commit details
  6. Adjust volume path

    igor-imaginemage committed Apr 15, 2025
    Copy the full SHA
    ba8fe70 View commit details
  7. Copy the full SHA
    458a124 View commit details
  8. Adjust db dump path

    igor-imaginemage committed Apr 15, 2025
    Copy the full SHA
    a8d9186 View commit details
  9. Copy the full SHA
    5935904 View commit details
1 change: 1 addition & 0 deletions .config/composer/.htaccess
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Deny from all
111 changes: 111 additions & 0 deletions .devcontainer/blackfire/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
{
"hostRequirements": {
"cpus": 8,
"memory": "16gb",
"storage": "32gb"
},
"name": "[Blackfire] Magento 2.4",
"workspaceFolder": "/var/www/html",
"dockerComposeFile": "docker-compose.yml",
"service": "php",
"remoteUser": "nginx",
"runServices": [
"php",
"nginx",
"db",
"redis",
"opensearch",
"rabbitmq",
"phpmyadmin"
],
"forwardPorts": [
80, // nginx
3306, // db
5672, // rabbitmq
8025, // MailHog
9000, // PHP-FPM
9001, // Additional PHP-FPM ports for debugging
9002, // Additional PHP-FPM ports for debugging
9003, // Additional PHP-FPM ports for debugging
5601, // OpenSearch (if needed)
8080 // phpMyAdmin
],
"customizations": {
"vscode": {
"extensions": [
"xdebug.php-debug",
"bmewburn.vscode-intelephense-client",
"jerrylopez.magento2-snippets",
"benoitalix.hyva-vscode-snippets",
"shevaua.phpcs",
"GitHub.copilot"
],
"settings": {
"extensions.autoUpdate": true,
"extensions.autoCheckUpdates": true,
"php.validate.executablePath": "/usr/local/bin/php",
"php.suggest.basic": false,
"php.executablePath": "/usr/local/bin/php",
"intelephense.files.exclude": [
"**/.js",
"**/.png",
"**/.jpg",
"**/.css",
"**/.pdf",
"**/.txt",
"**/.csv",
"**/.xml",
"**/dev",
"**/pub",
"**/var",
"**/generated",
"**/.vscode-remote",
"**/node_modules"
],
"files.exclude": {
"**/dev": true,
"**/pub": true,
"**/var": true,
"**/generated": true,
"**/.vscode-remote": true,
"**/node_modules": true
},
"intelephense.diagnostics.undefinedTypes": false,
"intelephense.telemetry.enabled": false,
"intelephense.files.maxSize": 2000000,
"intelephense.maxMemory": 8096,
"intelephense.diagnostics.implementationErrors": false,
"intelephense.files.associations": ["*.php", "*.phtml"],
"search.exclude": {
"**/generated": true,
"**/dev": true,
"**/pub": true,
"**/var": true,
"**/.vscode-remote": true,
"**/node_modules": true
},
"files.watcherExclude": {
"**/generated": true,
"**/dev": true,
"**/pub": true,
"**/var": true,
"**/.vscode-remote": true,
"**/node_modules": true
},
"intelephense.rename.exclude": [],
"intelephense.references.exclude": [],
"phpcs.standard": "PSR2",
"phpcs.enable": true,
"phpcs.executablePath": "/usr/local/bin/phpcs",
"phpcs.autoConfigSearch": true,
"phpcs.ignorePatterns": ["vendor/*", "pub/*", "lib/*", "setup/*"],
"phpcs.showWarnings": true,
"phpcs.showSources": true,
"phpcs.lintOnSave": true,
"phpcs.lintOnlyOpened": true,
"phpcs.lintOnType": false,
"phpcs.lintOnOpen": false
}
}
}
}
110 changes: 110 additions & 0 deletions .devcontainer/blackfire/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
version: "3.9"
services:
php:
image: ghcr.io/imagination-media/magento-k8s/php-fpm:8.4
volumes:
- ../../:/var/www/html
expose:
- "22" # SSH
- "8025" # MailHog
- "9000" # PHP-FPM
- "9001" # Additional PHP-FPM ports for debugging
- "9002" # Additional PHP-FPM ports for debugging
- "9003" # Additional PHP-FPM ports for debugging
depends_on:
- db
- redis
- rabbitmq
- opensearch
environment:
- mailhog=1
- blackfire=1
networks:
- magento-network
extra_hosts:
- "host.docker.internal:host-gateway"

nginx:
image: ghcr.io/imagination-media/magento-k8s/nginx:latest
volumes:
- ../../:/var/www/html
expose:
- "80" # Web server
ports:
- "80:80" # Web server
depends_on:
- php
networks:
- magento-network
environment:
- frontend_domain=magento.test
- frontend_store=default
- magento_mode=developer
- php_fpm_service=php:9000

rabbitmq:
image: rabbitmq:4
expose:
- "5672"
networks:
- magento-network

opensearch:
hostname: opensearch
image: 'magento/magento-cloud-docker-opensearch:2.4-1.3.5'
ulimits:
memlock:
soft: -1
hard: -1
environment:
- cluster.name=docker-cluster
- discovery.type=single-node
- discovery.seed_hosts=opensearch
- bootstrap.memory_lock=true
- DISABLE_SECURITY_PLUGIN=true
networks:
- magento-network

redis:
image: valkey/valkey:8
expose:
- "6379"
networks:
- magento-network

db:
image: mariadb:11.4
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: magento
TZ: UTC
MYSQL_USER: magento
MYSQL_PASSWORD: magento
volumes:
- db-data:/var/lib/mysql/data
- ../mysql-dump:/docker-entrypoint-initdb.d
expose:
- "3306"
ports:
- "3306:3306"
networks:
- magento-network

phpmyadmin:
image: phpmyadmin:latest
expose:
- "80"
ports:
- "8080:80"
environment:
PMA_ABSOLUTE_URI: "http://ourproject.test/phpmyadmin/"
networks:
- magento-network

networks:
magento-network:

# Persist database information after your VM shuts down
volumes:
db-data:
opensearch-data:
111 changes: 111 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
{
"hostRequirements": {
"cpus": 8,
"memory": "16gb",
"storage": "32gb"
},
"name": "Magento 2.4",
"workspaceFolder": "/var/www/html",
"dockerComposeFile": "docker-compose.yml",
"service": "php",
"remoteUser": "nginx",
"runServices": [
"php",
"nginx",
"db",
"redis",
"opensearch",
"rabbitmq",
"phpmyadmin"
],
"forwardPorts": [
80, // nginx
3306, // db
5672, // rabbitmq
8025, // MailHog
9000, // PHP-FPM
9001, // Additional PHP-FPM ports for debugging
9002, // Additional PHP-FPM ports for debugging
9003, // Additional PHP-FPM ports for debugging
5601, // OpenSearch (if needed)
8080 // phpMyAdmin
],
"customizations": {
"vscode": {
"extensions": [
"xdebug.php-debug",
"bmewburn.vscode-intelephense-client",
"jerrylopez.magento2-snippets",
"benoitalix.hyva-vscode-snippets",
"shevaua.phpcs",
"GitHub.copilot"
],
"settings": {
"extensions.autoUpdate": true,
"extensions.autoCheckUpdates": true,
"php.validate.executablePath": "/usr/local/bin/php",
"php.suggest.basic": false,
"php.executablePath": "/usr/local/bin/php",
"intelephense.files.exclude": [
"**/.js",
"**/.png",
"**/.jpg",
"**/.css",
"**/.pdf",
"**/.txt",
"**/.csv",
"**/.xml",
"**/dev",
"**/pub",
"**/var",
"**/generated",
"**/.vscode-remote",
"**/node_modules"
],
"files.exclude": {
"**/dev": true,
"**/pub": true,
"**/var": true,
"**/generated": true,
"**/.vscode-remote": true,
"**/node_modules": true
},
"intelephense.diagnostics.undefinedTypes": false,
"intelephense.telemetry.enabled": false,
"intelephense.files.maxSize": 2000000,
"intelephense.maxMemory": 8096,
"intelephense.diagnostics.implementationErrors": false,
"intelephense.files.associations": ["*.php", "*.phtml"],
"search.exclude": {
"**/generated": true,
"**/dev": true,
"**/pub": true,
"**/var": true,
"**/.vscode-remote": true,
"**/node_modules": true
},
"files.watcherExclude": {
"**/generated": true,
"**/dev": true,
"**/pub": true,
"**/var": true,
"**/.vscode-remote": true,
"**/node_modules": true
},
"intelephense.rename.exclude": [],
"intelephense.references.exclude": [],
"phpcs.standard": "PSR2",
"phpcs.enable": true,
"phpcs.executablePath": "/usr/local/bin/phpcs",
"phpcs.autoConfigSearch": true,
"phpcs.ignorePatterns": ["vendor/*", "pub/*", "lib/*", "setup/*"],
"phpcs.showWarnings": true,
"phpcs.showSources": true,
"phpcs.lintOnSave": true,
"phpcs.lintOnlyOpened": true,
"phpcs.lintOnType": false,
"phpcs.lintOnOpen": false
}
}
}
}
Loading