Установка EspoCRM на свой сервер
Установка EspoCRM на свой сервер сводится к одному compose-файлу: контейнер приложения на порту 8080, база MariaDB и отдельный контейнер-демон для фоновых задач. EspoCRM это лёгкая CRM на PHP с лицензией AGPL-3.0: контакты, сделки, почта, календарь и REST API.
Ответ за 30 секунд
Небольшой команде хватит 2 ядер и 2 ГБ памяти (оценка редакции). Берите образ espocrm/espocrm, MariaDB и контейнер с демоном: без демона не работают фоновые задачи, и CRM молча перестаёт делать то, что должна делать по расписанию.
Облачный сервер с почасовой оплатой: поднимите EspoCRM на сутки, перенесите десяток сделок и решите, остаётесь ли.
Какие сервисы входят в EspoCRM в Docker и сколько памяти им нужно8080порт в compose из документации
4сервиса в примере compose
AGPL-3.0лицензия ядра
01 · 1 мин
Что умеет EspoCRM и когда хватит её одной#
EspoCRM ведёт контакты, организации, лиды, сделки и обращения клиентов, показывает календарь и подтягивает письма в карточки. Поля, макеты и связи между записями меняются из интерфейса администратора, программировать для этого не нужно.
Ядро бесплатное, а отдельные расширения продаются, поэтому до установки проверьте, что нужные вам функции входят в бесплатную часть. Склад и бухгалтерии тут нет: для них смотрите Odoo. Общее сравнение шести систем лежит на странице self hosted CRM.
Инструмент · 1 мин
Какие сервисы входят в EspoCRM в Docker и сколько памяти им нужно#
| Сервис | Для чего |
|---|---|
| espocrm-db | база MariaDB, данные в томе espocrm-db |
| espocrm | сайт и API, порт 8080 на сервере (80 в контейнере) |
| espocrm-daemon | тот же образ, но запускает docker-daemon.sh: фоновые задачи |
| espocrm-websocket | необязательный сервис docker-websocket.sh, порт 8081 |
Образ с сайтом, демон и websocket собраны из одного образа, поэтому дисковое место они делят. Минимума по памяти документация не называет. Для команды до 10 человек хватит конфигурации MSK Ultra 40: 2 ядра, 2 ГБ и 40 ГБ диска за 3 960 ₽ в месяц на 14 октября 2026.
Какой сервер взять под EspoCRM
Три ответа, и калькулятор подберёт готовую конфигурацию
03 · 1 мин
Установка EspoCRM в Docker Compose по шагам#
- Подготовьте сервер: Docker и плагин Compose ставятся скриптом
curl -fsSL https://get.docker.com | sh. - Сохраните файл
docker-compose.ymlниже, заменив пароли и адрес вESPOCRM_SITE_URL. - Запустите
docker compose up -d. При первом старте образ сам создаёт таблицы и администратора. - Откройте
http://IP-сервера:8080и войдите под логином и паролем из переменныхESPOCRM_ADMIN_USERNAMEиESPOCRM_ADMIN_PASSWORD. - Проверьте демон:
docker compose psдолжен показать espocrm-daemon в состоянии running.
services:
espocrm-db:
image: mariadb:latest
restart: always
environment:
MARIADB_ROOT_PASSWORD: замените-пароль-root
MARIADB_DATABASE: espocrm
MARIADB_USER: espocrm
MARIADB_PASSWORD: замените-пароль
volumes:
- espocrm-db:/var/lib/mysql
healthcheck:
test: mariadb-admin --user=root --password=замените-пароль-root --host=127.0.0.1 ping
interval: 20s
start_period: 10s
timeout: 10s
retries: 3
espocrm:
image: espocrm/espocrm
restart: always
depends_on:
espocrm-db:
condition: service_healthy
environment:
ESPOCRM_DATABASE_PLATFORM: Mysql
ESPOCRM_DATABASE_HOST: espocrm-db
ESPOCRM_DATABASE_NAME: espocrm
ESPOCRM_DATABASE_USER: espocrm
ESPOCRM_DATABASE_PASSWORD: замените-пароль
ESPOCRM_ADMIN_USERNAME: admin
ESPOCRM_ADMIN_PASSWORD: замените-пароль-админа
ESPOCRM_SITE_URL: http://IP-сервера:8080
volumes:
- espocrm-data:/var/www/html/data
- espocrm-custom:/var/www/html/custom
- espocrm-custom-client:/var/www/html/client/custom
ports:
- '8080:80'
espocrm-daemon:
image: espocrm/espocrm
restart: always
depends_on:
- espocrm
volumes_from:
- espocrm
entrypoint: docker-daemon.sh
volumes:
espocrm-db:
espocrm-data:
espocrm-custom:
espocrm-custom-client:
Три тома приложения хранят настройки и вложения (data) и ваши доработки (custom и client/custom). Документация примера использует тег latest: для рабочей системы закрепите конкретную версию образа, чтобы обновление не случилось без вашего решения.
04 · 1 мин
EspoCRM или SuiteCRM, Vtiger и Twenty: что взять#
SuiteCRM и Vtiger живут на том же стеке PHP и MySQL, и если команда привыкла к их интерфейсу, переезжать на EspoCRM ради самого переезда незачем. EspoCRM выигрывает, когда нужны быстрая настройка полей и макетов и компактный Docker-набор из трёх контейнеров.
Twenty построена иначе: Node.js, PostgreSQL и Redis, интерфейс в духе таблиц. Её берут, когда важнее современный API, а не привычный PHP. Лицензии и требования всех шести систем собраны на странице self hosted CRM.
05 · 1 мин
HTTPS и пользователи EspoCRM: домен, роли, двухфакторный вход#
Закройте порт 8080 для внешнего мира и поставьте перед контейнером Caddy или Nginx с сертификатом. После этого измените ESPOCRM_SITE_URL на адрес с https, иначе ссылки в письмах и уведомлениях поведут на IP.
Менеджеров заводят в разделе Администрирование, Пользователи. Видимость записей задают ролями и командами: сделки отдела продаж не нужны сотрудникам из других отделов. Администратору включите двухфакторную проверку, а пароль из примера в документации не оставляйте: пример нужен, чтобы показать формат.
06 · 1 мин
Копии и обновление EspoCRM в Docker без потери сделок#
В копию входят дамп MariaDB и три тома приложения. Базу выгружает docker compose exec espocrm-db mariadb-dump --user=root --password=ПАРОЛЬ espocrm > espocrm.sql, тома сохраняйте архивом. Схемы вывоза копий с сервера описаны в разборе сервер для бэкапов, а у самой EspoCRM есть отдельное руководство по копированию и восстановлению.
Обновление в Docker Compose это две команды: docker compose pull и docker compose up -d. Сделайте дамп до них: при теге latest образ может принести новую ветку, а вернуть базу назад без копии не получится.
07 · 1 мин
Вопросы об установке EspoCRM#
Как установить EspoCRM через Docker Compose?
Поставьте Docker, сохраните compose-файл с сервисами MariaDB, EspoCRM и espocrm-daemon, задайте пароли в переменных ESPOCRM_DATABASE_PASSWORD и ESPOCRM_ADMIN_PASSWORD и выполните docker compose up -d. Сайт откроется на порту 8080.
Зачем в EspoCRM нужен контейнер espocrm-daemon?
Он запускает тот же образ с сценарием docker-daemon.sh и выполняет фоновые задачи. Без него запланированные действия не работают.
Как обновить EspoCRM, установленную в Docker?
Перейдите в каталог с compose-файлом и выполните docker compose pull, затем docker compose up -d. Перед этим сделайте дамп базы и сохраните тома.
Какой логин и пароль у EspoCRM после установки в Docker?
Те, что вы задали в ESPOCRM_ADMIN_USERNAME и ESPOCRM_ADMIN_PASSWORD. Значение пароля по умолчанию в документации слабое, поэтому задавайте свой.
Чем EspoCRM отличается от SuiteCRM и Twenty?
EspoCRM и SuiteCRM работают на PHP и MySQL, Twenty использует Node.js, PostgreSQL и Redis. EspoCRM проще настраивается, SuiteCRM содержит больше готовых модулей.
Почему этому можно верить
Как мы проверяли
Источники цифр на этой странице: VPS и VDS серверы Таймвеб Клауд, timeweb.cloud/services/vds-vps, проверено 14 октября 2026; Маркетплейс приложений Таймвеб Клауд, timeweb.cloud/marketplace, проверено 14 октября 2026; Документация EspoCRM: установка в Docker (compose, переменные, обновление), docs.espocrm.com/administration/docker/installation, проверено 16 октября 2026.
Запустите свой сервер за пару минут
Почасовая оплата: тестовый стенд на сутки стоит десятки рублей, а не месячный тариф.
- NVMe-диски и гарантированная доля процессора
- Root-доступ и любой софт, от Docker до игровых серверов
- Маркетплейс: 91 приложение в один клик
- Бесплатный перенос проекта силами специалистов