Установка Медкей v1 на Debian 9

Материал из Документация МИС Медкей
Перейти к: навигация, поиск

МИС Медкей может быть установлена на Debian 9 как из дистрибутива, так и из исходного кода.

Установка МИС Медкей 1.x из дистрибутива

Установка МИС Медкей 1.x из исходного кода

Целевая конфигурация

  • PHP 7.2;
  • СУБД PostgreSQL 10;
  • Apache2.4;
  • RabbitMQ;
  • Graphviz.org (dot утилита);
  • Supervisor.

Предварительные условия

  • Установлен дистрибутив операционной системы Debian 9+ (любой стабильный минор мажорной версии);
  • Имеются привилегии root (через sudoers);
  • Настроены источники для пакетного менеджера apt-get (в файле /etc/apt/sources.list имеется корректно настроенный набор репозиториев deb-пакетов);
  • Имеется доступ в Интернет.

Шаги по установке

Установка и настройка окружения

  1. Выполнить команды добавления репозитория deb-пакетов PHP 7.2: wget -q https://packages.sury.org/php/apt.gpg -O- | sudo apt-key add - echo "deb https://packages.sury.org/php/ stretch main" | sudo tee /etc/apt/sources.list.d/php.list
  2. Выполнить команду: apt-get update
  3. Выполнить команда на установку apache2, git: apt-get install git apache2
  4. Выполнить команду a2enmod rewrite
  5. Выполнить установку PHP7.2 и необходимых модулей: apt-get install php7.2 \n a2dismod php<OLD_VERSION> # выключить старый модуль php на apache2.4 a2enmod php7.2 # включить новый модуль php на apache2.4
  6. Далее необходимо проверить установку всех необходимых модулей, от которых зависит приложение Medkey с помощью команды: php -m Данная команда должна вывести минимум данный список модулей: code bcmath calendar Core ctype curl date dom exif fileinfo filter ftp gd gettext hash iconv imap intl json libxml mailparse mbstring openssl pcntl pcre PDO pdo_pgsql pgsql Phar posix readline Reflection session shmop SimpleXML soap sockets sodium SPL standard sysvmsg sysvsem sysvshm tidy tokenizer wddx xml xmlreader xmlwriter xsl Zend OPcache zip zlib mysqli mysqlnd pdo_mysql
  7. При необходимости доставить php-модули командой: apt-get install php7.2-<name_module> (исключение для php-mailparse: apt-get install php-mailparse)
  8. Выполнить команды установки NodeJS: sudo apt-get install curl software-properties-common и curl -sL https://deb.nodesource.com/setup_11.x | sudo bash -
  9. Установить nodejs: apt-get install nodejs
  10. Установка СУБД PostgreSQL 10: sudo apt-get install curl ca-certificates sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list' sudo apt-get update sudo apt-get install postgresql-10 pgadmin4 service postgresqlstart su postgres psql \password # Установить пароль на пользователя postgres для коннекта к СУБД
  11. Проверить версии установленного ПО:
    • Команда node -v должна вывести версию не менее 11.x;
    • Команда npm -v должна вывести версию не менее 6.x;
    • Команда php -v должна вывести версию не менее 7.2.x;
    • Команда postgresql -v должна вывести версию не менее 10.x
  12. Выполнить установку composer по инструкции https://getcomposer.org/download/.

Установка пакетов приложения

  1. Склонировать репозиторий приложения: git clone git@github.com:medkey-org/medkey.git для получения последней master-версии, либо git clone git@github.com:medkey-org/medkey.git tags/<версия> для получения специфической версии приложения (другие способы смотрите на странице репозитория);
  2. В корневом каталоге приложения выполнить команду: composer install;
  3. Перейти в каталог frontend, выполнить в нём команду: npm install, затем выполнить команду: npm run build-prod.

Конфигурирование приложения

  1. Скопировать файл .env.prod в .env в корне приложения командой: cp .env.prod .env;
  2. Создать базу данных (например, с именем medkey) и служебную учётную запись (например, с логином medkey) в кластере PostgreSQL для подключения приложения: sudo -u postgres pg_createdb medkey и sudo -u postgres createuser medkey;
  3. Отредактировать параметры подключения к базе данных в файле .env при помощи любого удобного текстового редактора (например, vim);
  4. Установить корректный режим уникальных идентификаторов записей (ID) в базе данных (параметр APP_TYPE_KEY=):
    1. Если требуются GUID-идентификаторы (UUID): вписать в строку APP_TYPE_KEY значение APP_TYPE_KEY=uuid;
    2. Если требуются bigint-идентификаторы (64-разрядные): вписать в строку APP_TYPE_KEY значение APP_TYPE_KEY=bigint.
  5. Выполнить установку миграций командой: php bin migrate;
  6. Выполнить установку предустановленного пакета данных: php bin seed package;
  7. Скопировать файл config/apache2.vhost.sample в каталог виртуальных хостов: cp config/apache2.vhost.sample /etc/apache2/sites-available/medkey.conf и выполнить команду a2ensite medkey, затем перезапустить веб-сервер командой: /etc/init.d/apache2 restart.

Проверка приложения

Открыть браузер, убедиться, что указанный в medkey.conf хост доступен.

Ввести стандартную учётную запись admin:admin, аутентификация и авторизация должны отобразить рабочий стол приложения.

Установка медицинской информационной системы Медкей v1.x из исходного кода выполнена успешно.