Как это работает?

Вся система userside целиком вместе со всеми необходимыми для своей работы приложениями, такими как СУБД PostgreSQL, Radis и RabbitMQ, поставляется в виде готовых образов контейнеров. Контейнеры включают в себя всё необходимое для запуска конкретной службы и вам не придется заниматься установкой и настройкой зависимостей для них. Всё необходимое находится внутри контейнера. Образ контейнера — это его слепок, который скачивается с реестра контейнеров автоматически и нужен для запуска контейнера. Внешние модули usm_* не предоставляются, но могут быть без труда подключены к моей сборке userside точно так же как и к обычной.

В качестве системы управления контейнерами используется Docker Engine, а для запуска групп контейнеров как одной цельной системы используется плагин Docker Compose v2. Docker и Compose легко устанавливаются одной командой.

Система состоит из набора контейнеров: userside, poller, postgres, rabbitmq, redis. Образы контейнеров poller, postgres и rabbitmq доступны в публичном докер-хабе erpuserside на постоянной основе. Образ контейнера redis является официальным, не связанным с userside, и также доступен на докер-хабе.

Образ контейнера userside (собирается мной) расположен на моем персональном сервере (реестре контейнеров), доступ к которому открывается после оплаты.

При первом запуске набора контейнеров, образы для них загружаются автоматически и остаются на сервере до тех пор, пока не будут удалены специально или в результате какой-то чистки системы (например docker system prune, или docker compose down --rmi all или подобных действий). Вы сможете сколько угодно раз запускать контейнеры, пока в системе остаются их образы.

После загрузки операционной системы весь набор контейнеров запускается автоматически в правильной последовательности. Внутри контейнера userside находится web-сервер nginx, так что его можно использовать как есть без необходимости установки на сервер чего-то еще кроме докера. Также внутри контейнера userside работает cron и фоновые процессы ядра userside. Система целиком готова к использованию и не требует дополнительных манипуляций. Резервное копирование базы данных выполняется раз в сутки в 7 утра. Резервное копирование файлов вложений (/opt/userside/data/var/attachments), если оно необходимо, выполняется вами удобным для вас способом.