Debian
Инструкция по установке Пассворка на ОС:
- Debian 11
- Debian 12
В инструкции используются переключаемые блоки кода для разделения команд согласно версиям операционной системы.
1. Минимальные системные требования
Пассворк не требователен к системным ресурсам, а необходимое количество серверов зависит от числа активных пользователей, объема хранимых данных и требований к отказоустойчивости системы.
Ознакомиться с полными системными требованиями.
Если сервер имеет 2-4 ГБ оперативной памяти, рекомендуется включить SWAP файл.
2. Базовые действия перед установкой
Получить права root и обновить локальную базу данных пакетов:
- shell
sudo -i
apt-get update
Установить веб-сервер Apache2 и утилиту передачи данных curl:
- shell
apt-get install -y apache2 unzip curl zip jq
3. Установка PHP
Установить пакеты для работы с HTTPS-репозиториями:
- shell
apt-get install -y apt-transport-https lsb-release ca-certificates
Получить и сохранить GPG-ключ PHP-репозитория:
- shell
wget -O /etc/apt/trusted.gpg.d/php.gpg https://repos.passwork.ru/repository/php/apt/debian/apt.gpg
Добавить PHP-репозиторий в список источников apt:
- shell
echo "deb https://repos.passwork.ru/repository/php/apt/debian/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list
Обновить локальный список пакетов и репозиториев:
- shell
apt update
Установить PHP и модули расширений:
- shell
apt install -y php8.3-cli php8.3-fpm php8.3-opcache php8.3-bcmath php8.3-intl php8.3-ldap php8.3-mbstring php8.3-pgsql php8.3-curl php8.3-xml php8.3-dev php-pear
Изменить объём RAM, до ступный для выполнения PHP скриптов:
- shell
sed -i 's/^memory_limit\s*=.*/memory_limit = 256M/' /etc/php/8.3/fpm/php.ini
Рекомендуется увеличивать параметр memory_limit с 256M до 512M или выше, если в Пассворке планируется большое количество пользователей.
Убедиться, что служба php8.3-fpm запущена:
- shell
systemctl status php8.3-fpm
Запустить и активировать автозапуск службы, если она остановлена:
- shell
systemctl start php8.3-fpm
systemctl enable php8.3-fpm
3.1 Установка драйвера PHP MongoDB
Установить драйвер PHP MongoDB:
- shell
pecl install mongodb
Выполнит ь стандартную (без изменений) сборку — Enter
Создать файлы конфигурации для загрузки и включения PHP MongoDB:
- shell
echo "extension=mongodb.so" | tee /etc/php/8.3/fpm/conf.d/20-mongodb.ini
echo "extension=mongodb.so" | tee /etc/php/8.3/cli/conf.d/20-mongodb.ini
4. Установка базы данных MongoDB
Если планируется использование PostgreSQL — пропустить 4-й шаг установки.
Подробнее о поддержке PostgreSQL.
Загрузить и добавить GPG-ключ MongoDB:
- Debian 12
- Debian 11
curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg --dearmor
curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg --dearmor
Добавить репозиторий MongoDB в файл:
- Debian 12
- Debian 11
echo "deb [ signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] http://repo.mongodb.org/apt/debian bookworm/mongodb-org/7.0 main" | tee /etc/apt/sources.list.d/mongodb-org-7.0.list
echo "deb [ signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg] http://repo.mongodb.org/apt/debian bullseye/mongodb-org/7.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list
Обновить список доступных пакетов:
- shell
apt-get update
Установить MongoDB с помощью менеджера пакетов apt:
- shell
apt-get install -y mongodb-org
Запустить службу mongod.service:
- shell
systemctl start mongod.service
Включить автозапуск службы:
- shell
systemctl enable mongod.service