Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Releases: starychenko/OcStore

v2.0.0 — OcStore 2.3 Support + Multi-Instance Isolation

30 Mar 09:39
@starychenko starychenko

Choose a tag to compare

OcStore Docker v2.0.0

Мажорний реліз: підтримка OcStore 2.3 (v2.3.0.2.4) поряд з OcStore 3.x (v3.0.4.1), з повною ізоляцією для паралельного запуску на одному сервері.

Нові можливості

OcStore 2.3 Build

  • Dockerfile.v2 — PHP 7.2-FPM (Debian Buster) з усіма розширеннями (gd, mysqli, zip, intl, bcmath, exif)
  • docker-compose.v2.yml — окремий compose файл з унікальними іменами сервісів (opencartv2, mariadbv2, filebrowserv2, phpmyadminv2)
  • docker/entrypoint.v2.sh — автоматична інсталяція з форматом config.php для OcStore 2.3 (HTTP_ADMIN, DIR_DATABASE, без DIR_STORAGE)
  • docker/php/php.v2.ini — PHP конфіг без JIT (недоступний в PHP 7.2), timezone Europe/Kiev
  • docker/php/php-fpm.v2.conf — PHP-FPM конфіг без decorate_workers_output (не підтримується в PHP 7.2)
  • Xdebug 3.1.6 — остання версія з підтримкою PHP 7.2, пінена в Dockerfile

Паралельний запуск

  • Обидві версії можуть працювати на одному сервері Coolify без конфліктів
  • Повністю ізольовані: окремі сервіси, volumes, Traefik service names
  • В Coolify: docker-compose.yml для v3, docker-compose.v2.yml для v2.3

Виправлення

Nginx SSL Termination

  • Додано fastcgi_param HTTPS on та fastcgi_param SERVER_PORT 443 в docker/nginx/default.conf
  • Виправляє jQuery/CORS помилки в адмінці при роботі за Coolify/Traefik reverse proxy
  • Причина: Traefik терміналить SSL перед nginx, PHP не знав що з'єднання HTTPS і генерував http:// URL

Traefik Routing Conflicts

  • Окремі docker-compose файли з унікальними service names запобігають перемішуванню маршрутів
  • Раніше обидва інстанси реєструвались як traefik.http.services.opencart і Traefik балансував між ними

Debian Buster EOL

  • Додано переключення apt sources на archive.debian.org (основні дзеркала повертають 404)
  • Видалено buster-updates (більше не доступний)

PHP 7.2 Сумісність

  • decorate_workers_output — не підтримується в PHP 7.2 FPM, створено окремий php-fpm.v2.conf
  • Europe/Kyiv — timezone додана в пізніших версіях PHP, використовується Europe/Kiev
  • grep -c integer parsing — виправлено check_database_installed() в entrypoint
  • generate_config після CLI install — config.php тепер перегенеровується з правильними storage paths

Файли

Файл Статус Опис
Dockerfile.v2 Новий PHP 7.2-FPM образ для OcStore 2.3
docker-compose.v2.yml Новий Compose з унікальними сервісами (opencartv2, mariadbv2, etc.)
docker/entrypoint.v2.sh Новий Entrypoint з v2.3 config.php форматом
docker/php/php.v2.ini Новий PHP конфіг без JIT
docker/php/php-fpm.v2.conf Новий PHP-FPM без decorate_workers_output
docker/nginx/default.conf Змінений +HTTPS/SSL fastcgi params
docker-compose.yml Змінений Хардкоджений Dockerfile (не через env var)
.env.example Змінений Оновлені інструкції
CLAUDE.md Змінений Повна документація обох версій
README.md Змінений Інструкції для паралельного деплою

Міграція з v1.x

Якщо ви використовували DOCKERFILE=Dockerfile.v2 в .env:

  1. Замість цього використовуйте docker-compose.v2.yml як compose файл в Coolify
  2. Видаліть DOCKERFILE зі змінних оточення — він більше не потрібен
  3. Redeploy з очисткою volumes

Coolify Deployment

OcStore 3.x: Build Pack → Docker Compose, файл: docker-compose.yml
OcStore 2.3: Build Pack → Docker Compose, файл: docker-compose.v2.yml

Обидва можуть працювати на одному сервері одночасно.

Assets 2
Loading

v1.2.0 — Performance & Security Tuning

25 Mar 20:57
@starychenko starychenko

Choose a tag to compare

Що нового в v1.2.0

🚀 Оптимізація продуктивності — MariaDB

Повна переробка конфігурації MariaDB для серверів з 8GB RAM:

Параметр Було Стало
innodb_buffer_pool_size 1G 2G
innodb_log_buffer_size 16M 64M
innodb_io_capacity 400/800
innodb_flush_log_at_trx_commit 1 2 (швидше, безпечно)
query_cache_type ON (128M) OFF (deprecated, викликав lock contention)
tmp_table_size / max_heap_table_size 256M 64M (реалістично)
max_connections 200 100 (запобігає OOM)
wait_timeout 900s 300s (звільняє idle-з'єднання)
slow_query_log OFF ON (поріг 2s)
performance_schema ON OFF (звільняє ~400MB RAM)

🔒 Безпека — Nginx

  • Додано server_tokens off — приховує версію Nginx з HTTP-відповідей

⚙️ PHP

  • opcache.memory_consumption: 512M → 256M (достатньо для OpenCart, менше витрат)
  • session.cookie_secure: Off → On (cookies тільки по HTTPS)

🐛 Виправлення

  • FileBrowser permissions: контейнер тепер запускається від www-data (33:33) замість root — завантажені файли мають правильні права для PHP-FPM
  • DB_EXTERNAL_PORT: додано конфігурацію зовнішнього порту БД через .env (змінна DB_EXTERNAL_PORT)
  • Timeouts: збільшено ліміти Nginx і PHP-FPM для важких операцій (імпорт каталогу, масові оновлення)

Оновлення

Coolify — Redeploy

Всі зміни застосуються автоматично після redeploy.

⚠️ MariaDB потребує перезапуску контейнера (не просто reload) для застосування innodb_buffer_pool_size.

Локально

git pull origin master
docker compose down mariadb && docker compose up -d mariadb
docker compose up -d --build opencart

Сумісність

  • OpenCart 3.x (OcStore fork)
  • MariaDB 10.6
  • PHP 8.1-FPM
  • Nginx (latest Bookworm)
  • Coolify 4.x
Loading

v1.1.0 - FileBrowser & Ukrainian Docs

27 Jan 08:29
@starychenko starychenko

Choose a tag to compare

Що нового

FileBrowser - Веб-файловий менеджер

  • Додано FileBrowser для управління файлами через браузер
  • Доступ до /var/www/html та /var/www/storage через веб-інтерфейс
  • Автоматична генерація пароля при першому запуску (дивіться логи)
  • Інтеграція з Traefik для Coolify

Виправлення

  • Виправлено помилку Undefined constant "OPENCARTFORUM_SERVER" в адмінці
  • Додано константу OPENCARTFORUM_SERVER в admin/config.php

Документація

  • Повний переклад .env.example українською мовою
  • Оновлено README.md з секцією FileBrowser
  • Оновлено CLAUDE.md з архітектурою

Оновлення

Coolify

  1. Додайте домен для filebrowser (напр. files.yourdomain.com)
  2. Redeploy
  3. Пароль FileBrowser в логах контейнера

Локально

# docker-compose.override.yml
services:
 filebrowser:
 ports:
 - "8082:8080"

Credentials FileBrowser

  • Логін: admin
  • Пароль: Генерується автоматично (в логах)

Full Changelog: v1.0.0...v1.1.0

Loading

v1.0.0 - Production Ready

21 Jan 15:42
@starychenko starychenko

Choose a tag to compare

OpenCart 3 (OcStore) Docker - Перший стабільний реліз

Production-ready Docker образ для OpenCart 3 (OcStore v3.0.4.1).

Можливості

  • Автоматична інсталяція — без веб-візарда
  • Coolify Ready — Traefik labels, health checks, environment variables
  • Збереження даних — модулі, теми, зображення зберігаються при redeploy
  • JIT продуктивність — OPcache + Tracing JIT увімкнено
  • Dev інструменти — Xdebug та ionCube опціонально (вимкнені для JIT)

Технології

Компонент Версія
OcStore 3.0.4.1
PHP 8.1-FPM (Debian Bookworm)
Nginx Latest
MariaDB 10.6 LTS
phpMyAdmin Latest

Швидкий старт

git clone https://github.com/starychenko/OcStore.git
cd OcStore
cp .env.example .env
# Відредагувати .env
docker compose up -d --build

Документація

Дивіться README.md для повної документації.

Loading

AltStyle によって変換されたページ (->オリジナル) /