Обзор развертывания MEAN на сервере¶
Предварительные требования и базовые условия¶
Процесс развертывания требует сервера Linux с установленной операционной системой Ubuntu или Debian. В системе должны быть установлены следующие компоненты (либо они будут установлены в рамках автоматизированного процесса):
-
Операционная система: Ubuntu или Debian.
-
Привилегии: Для установки системных пакетов требуется доступ root или учетная запись с правами
sudo. -
Доступ к сети: Сервер должен иметь исходящий доступ в Интернет для загрузки зависимостей из общедоступных репозиториев.
-
Порты: Используются порты по умолчанию для приложений Node.js и PostgreSQL. Убедитесь, что межсетевой экран (firewall) разрешает трафик на этих портах для локального доступа или для конкретного удаленного доступа в соответствии с конфигурацией.
Процесс установки приложения¶
Стек MEAN устанавливается путем ручного выполнения конкретных команд для настройки среды выполнения, базы данных и инструментов разработки. Установка включает следующие компоненты:
-
Node.js: Устанавливается через репозиторий NodeSource.
-
В системах Ubuntu устанавливается версия Node.js 14.x.
-
В системах Debian устанавливается версия Node.js 18.x.
-
Angular CLI: Устанавливается глобально с помощью
npm. -
Express: Устанавливается глобально с использованием пакета
express-generator. -
PostgreSQL: Устанавливается как системный сервис и настраивается для автоматического запуска при загрузке.
-
Клиент PostgreSQL для Node.js: Пакет
pgустанавливается для обеспечения подключения к базе данных.
Чтобы вручную воссоздать эту конфигурацию, выполните следующие команды в зависимости от вашей операционной системы:
Для Ubuntu:
curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get update
sudo apt-get install -y nodejs
sudo apt-get install -y postgresql
sudo npm install -g @angular/cli
sudo npm install -g express-generator
npm install pg
Для Debian:
curl -fsSL https://deb.nodesource.com/setup_18.x | bash -
apt-get update
apt-get install -y nodejs
apt-get install -y postgresql
npm install -g @angular/cli
npm install -g express-generator
npm install pg
Базы данных¶
Приложение использует PostgreSQL в качестве системы управления реляционными базами данных (RDBMS).
-
Метод подключения: Приложение подключается к базе данных, используя клиент Node.js
pg. -
Местоположение хранилища: Данные базы данных хранятся в каталоге данных PostgreSQL по умолчанию, обычно находящемся по пути
/var/lib/postgresql/data/. -
Статус сервиса: Сервис PostgreSQL настроен так, чтобы быть запущенным и включенным для автоматического запуска при загрузке системы.
Запуск, остановка и обновление¶
Управление сервисом базы данных PostgreSQL осуществляется с помощью стандартного менеджера системных сервисов. Приложения Node.js (Angular и Express) выполняются как пользовательские процессы и в данной конфигурации не имеют отдельных определений сервисов systemd.
Для управления сервисом PostgreSQL используйте следующие команды:
Для перезапуска сервиса после обновлений:
Клиент pg и другие модули Node.js устанавливаются локально или глобально и не имеют специфических команд управления сервисами, кроме стандартного выполнения через npm или node.