Sign inSign up

sqllmpro/magenta-app

By sqllmpro

•Updated 11 months ago

Magento stack: Nginx, PHP-FPM, MariaDB, Redis, RabbitMQ, OpenSearch + phpMyAdmin, Mailcatcher

Image
0

1.1K

sqllmpro/magenta-app repository overview

⁠📝 Overall Project Description (for Docker Hub: sqllmpro/magenta)

🧱 Magento Full Stack Environment This repository provides a production-grade Docker Compose setup for running Magento 2 with all its supporting services. It allows quick deployment and isolation of all required components — from the web server to the database, search engine, and message queue.

🔁 Simply docker-compose up -d and you're ready to go!


⁠🧩 Breakdown of Each Container

Container NameDocker ImagePurpose
magenta-appsqllmpro/magenta-appNginx web server: Handles HTTP/HTTPS traffic and serves the Magento frontend and admin
magenta-phpsqllmpro/magenta-phpPHP-FPM container: Executes Magento's PHP code using PHP 8.3 optimized for performance
magenta-dbsqllmpro/magenta-dbMariaDB 11.4 database: Stores Magento's product catalog, customer data, configs, etc.
magenta-rabbitmqsqllmpro/magenta-rabbitmqRabbitMQ queue broker: Enables asynchronous message processing for Magento (e.g., email, indexers)
magenta-opensearchsqllmpro/magenta-opensearchOpenSearch (Elasticsearch): Powers product and catalog search
magenta-redissqllmpro/magenta-redisRedis: Used by Magento for caching, sessions, and page speed improvements
magenta-mailcatchersqllmpro/magenta-mailcatcherMailcatcher: Captures outgoing Magento emails for development/testing (web UI on port 1080)
magenta-phpmyadminsqllmpro/magenta-phpmyadminphpMyAdmin: Web-based DB GUI to manage the MariaDB instance (web UI on port 8080)

⁠🔧 How to Use This Stack (Instructions for README / Docker Hub)

# 1. Clone or download docker-compose.yml
curl -O https://github.com/haimnewclass/Docker/blob/master/Magento/docker-compose.yml

# 2. Run the full stack in background
docker-compose up -d

# 3. Access services:
# - Magento frontend: http://localhost
# - phpMyAdmin: http://localhost:8080
# - MailCatcher: http://localhost:1080

✅ All services are wired via Docker networks for internal communication ✅ Ports are exposed for local access — change them in docker-compose.yml if needed


⁠🧱 docker-compose.yml (Official)

Here is the full example of the docker-compose.yml again, suitable to publish:

version: '3.9'

services:
  app:
    image: sqllmpro/magenta-app:latest
    ports:
      - "80:8000"
      - "443:8443"
    depends_on:
      - php
      - db
    networks:
      - magento-net

  php:
    image: sqllmpro/magenta-php:latest
    networks:
      - magento-net

  phpmyadmin:
    image: sqllmpro/magenta-phpmyadmin:latest
    ports:
      - "8080:80"
    networks:
      - magento-net

  rabbitmq:
    image: sqllmpro/magenta-rabbitmq:latest
    ports:
      - "5672:5672"
      - "15672:15672"
    networks:
      - magento-net

  db:
    image: sqllmpro/magenta-db:latest
    ports:
      - "3306:3306"
    environment:
      MYSQL_ROOT_PASSWORD: magento
    networks:
      - magento-net

  mailcatcher:
    image: sqllmpro/magenta-mailcatcher:latest
    ports:
      - "1080:1080"
    networks:
      - magento-net

  opensearch:
    image: sqllmpro/magenta-opensearch:latest
    ports:
      - "9200:9200"
      - "9300:9300"
    networks:
      - magento-net

  redis:
    image: sqllmpro/magenta-redis:latest
    ports:
      - "6379:6379"
    networks:
      - magento-net

networks:
  magento-net:
    driver: bridge

⁠📄 Suggested Docker Hub Repo Structure

Each image (e.g., magenta-app, magenta-db) should have:

  • 📌 Tags: latest, or versioned (1.0, v1.0.1, etc.)
  • 📜 Short description: “Magento Nginx container” / “MariaDB for Magento”
  • 📘 README: Link to the main stack README or include docker-compose snippet
  • 🔐 Public repo setting: Make sure visibility is set to public

⁠✅ Final Notes

  • This approach is portable, scalable, and easy to reuse in different environments (local dev, staging, etc.)
  • Want to publish this as a GitHub repo + auto-build with GitHub Actions for Docker Hub? Just say the word ✨

Let me know if you'd like a Markdown copy for your README.md or Docker Hub description directly formatted!

Tag summary

Content type

Image

Digest

sha256:fb9fa2973…

Size

21.4 MB

Last updated

12 months ago

docker pull sqllmpro/magenta-app