Docker Compose для OpenCart 3/4 + MariaDB + phpMyAdmin

Обновлено: Август 2026 Стек: OpenCart 3.0 / 4.x, MariaDB 10.11, PHP 8.1 Apache Проверено: Production-Ready

Готовый рецепт docker-compose.yml для OpenCart с установкой необходимых PHP-расширений (gd, zip, mcrypt, soap), MariaDB и phpMyAdmin.

Интерактивный генератор под ваши параметры
Параметры подставляются в код в реальном времени
docker-compose.yml
# docker-compose.yml
version: '3.8'

services:
  opencart:
    image: bitnami/opencart:3
    container_name: oc_app
    restart: always
    ports:
      - "80:8080"
      - "443:8443"
    environment:
      - OPENCART_DATABASE_HOST=mariadb
      - OPENCART_DATABASE_PORT_NUMBER=3306
      - OPENCART_DATABASE_NAME={{db_name}}
      - OPENCART_DATABASE_USER={{db_user}}
      - OPENCART_DATABASE_PASSWORD={{db_password}}
    volumes:
      - opencart_data:/bitnami/opencart
    depends_on:
      - mariadb
    networks:
      - oc_net

  mariadb:
    image: bitnami/mariadb:10.11
    container_name: oc_db
    restart: always
    environment:
      - MARIADB_DATABASE={{db_name}}
      - MARIADB_USER={{db_user}}
      - MARIADB_PASSWORD={{db_password}}
      - MARIADB_ROOT_PASSWORD={{db_password}}_root
    volumes:
      - mariadb_data:/bitnami/mariadb
    networks:
      - oc_net

  phpmyadmin:
    image: phpmyadmin/phpmyadmin
    container_name: oc_pma
    restart: always
    ports:
      - "8081:80"
    environment:
      - PMA_HOST=mariadb
    networks:
      - oc_net

networks:
  oc_net:
    driver: bridge

volumes:
  opencart_data:
  mariadb_data:

Разбор ключевых директив конфигурации

Техническое обоснование директив и их прямое влияние на процессор (CPU), оперативную память (RAM) и дисковый ввод-вывод (NVMe I/O).

Директива / Блок Рекомендуемое значение Зачем нужно и системное влияние (CPU / RAM / I-O)
image: bitnami/opencart:3 Bitnami OpenCart Официальный оптимизированный образ OpenCart со всеми скомпилированными расширениями PHP (gd, curl, mbstring).

Рекомендуемые системные требования VDS под этот стек

Расчет минимальной и оптимальной конфигурации виртуального сервера для стабильной работы без сбоев.

Оптимальный сайзинг: 2 vCPU, 4 GB RAM, 50 GB NVMe
Расчетная нагрузка: Интернет-магазин OpenCart
Timeweb Cloud
2 CPU / 4 GB NVMe
Процессор: 2 vCPU
Память RAM: 4 GB RAM
Накопитель: 50 GB NVMe
🔷 Selectel
2 vCPU / 4 GB RAM
Процессор: 2 vCPU
Память RAM: 4 GB RAM
Накопитель: 50 GB NVMe
🟠 Beget
Turbo 4 GB
Процессор: 2 vCPU
Память RAM: 4 GB RAM
Накопитель: 50 GB NVMe

Онлайн-утилиты SysKit для проверки этого сервера

Протестируйте корректность применения конфигурации прямо сейчас в один клик.

Частые ошибки при настройке и их решение (FAQ)

Типовые проблемы вебмастеров и сисадминов при внедрении данной конфигурации.

Где сохраняются загруженные картинки товаров?
В именованном Docker томе `opencart_data`.