Крайне рекомендуется разворачивать ПК «Бюджет-NEXT» используя "WEB-Сервер-КС", т.к. он позволяет минимизировать издержки, связанные с разворачиванием и настройкой http сервера и .NET Core приложений. Для успешной установки необходимо строго придерживаться инструкции.
Установка происходит в терминале ОС. Необходимы права суперпользователя root!
Мы не несем ответственности за самостоятельную установку сторонними компонентами.
"WEB-Сервер-КС" - платформа для развертывания, управления и удаления http сервера, реализованного в виде контейнера для работы в средах с поддержкой контейнеризации Docker или Podman.
Цель использования: минимизировать издержки, связанные с разворачиванием и настройкой http сервера и .NET Core приложений.
Требует для работы: Docker-CE (Docker, Inc. лицензия Apache 2.0) или Podman (лицензия Apache 2.0), платформа linux/amd64.
Характеристики: позволяет устанавливать один контейнер c http сервером Apache, Angie или Nginx по указанному порту, внутри которого возможна установка нескольких .NET Core приложений идентифицируемых назначенным виртуальным каталогом.
Диапазон используемых портов: 5444-5493 и дополнительно 443 порт (по умолчанию).
В поставляемом образе контейнера используются компоненты:
/opt/wsks-6.0.9_443/ctl/
файл readme.txt
. Для соединения с Linux -сервером используйте:
- терминал в случае наличия графического интерфейса Linux-системы.
- клиент PuTTY для удаленного соединения с Linux-машиной. Для соединения укажите поля как показано ниже на рисунке и нажмите «Соединиться».
Наберите команду и введите пароль от пользователя root.
sudo su
Если он в режиме "enforcing" или "disabled", то переведите его в режим "permissive".
Внимание, команды перезагрузят ОС при выполнении условий!
if [ -f /etc/selinux/config ]; then if [ "$(echo $(getenforce))" = "Enforcing" ]; then sudo sed -i "s/SELINUX=enforcing/SELINUX=permissive/" /etc/selinux/config && reboot;fi;fi;
if [ -f /etc/selinux/config ]; then if [ "$(echo $(getenforce))" = "Disabled" ]; then sudo sed -i "s/SELINUX=disabled/SELINUX=permissive/" /etc/selinux/config && reboot;fi;fi;
Получите root-права снова, если предыдущая команда перезагрузила ОС.
sudo su
Имя пакетного менеджера (apt-get, apt или yum) определяется автоматически и записывается в переменную $kstmp.
if [ "$(which apt-get 2> /dev/null)" != "" ]; then export kstmp="apt-get";fi;
if [ "$(which yum 2> /dev/null)" != "" ]; then export kstmp="yum";fi;
if [ "$(which apt 2> /dev/null)" != "" ]; then export kstmp="apt";fi;
Пункт 2.2. должен быть выполнен.
if [ -z $(which wget 2> /dev/null) ]; then $kstmp install -y wget;fi;
if [ -z $(which nano 2> /dev/null) ]; then $kstmp install -y nano;fi;
В Debian GNU/Linux 11, 12 (bullseye) проверьте наличие iptables командой: iptables --version
.
Если iptables не установлен, то для установки используйте команду apt install iptables
Пункт является обязательным при первичной установке
В случае возникновения ошибки после установки:
Unable to start Kestrel. Failed to bind to address http://0.0.0.0:54430: address already in use
Обращаем ваше внимание, что необходимо устанавливать только один вариант из предоставленных ниже в п.3.
В RedOS 7.3.1, RedOS 7.3.2 рекомендуется установка docker-ce с репозиториев:
dnf install -y docker-ce
systemctl enable docker
systemctl start docker
systemctl status docker
В остальных ОС крайне рекомендуется установить docker-ce-20.10.21.
Загрузка архива производится с сайта Кейсистемс.
cd /opt
wget https://keysystems.ru/files/web/Linux/docker/dks-docker-ce-20.10.21.tar.gz --no-check-certificate
chmod +x dks-docker-ce-20.10.21.tar.gz
tar -C /opt/ -xvf dks-docker-ce-20.10.21.tar.gz
bash /opt/dks-docker-ce-20.10.21/install.sh
На момент написания статьи Podman есть в репозиториях: ALT Server 10.1, RED OS MUROM (7.3.1), RED OS MUROM (7.3.2), ALT Workstation K 10.0, Astra Linux Special Edition x.7.
Пункт 2.2. должен быть выполнен.
$kstmp install -y podman
$kstmp install -y runc
systemctl start podman
systemctl status podman
Внимание: на ROSA Enterprise Linux Server 7.3 ставьте только dks-wsks-6.0.9_d09.
Все остальные ОС:
cd /opt
wget -O /opt/dks-wsks-6.0.9_d12.tar.gz https://keysystems.ru/files/web/Linux/wsks/6.0.9/dks-wsks-6.0.9_d12.tar.gz --no-check-certificate
tar -C /opt/ -xvf dks-wsks-6.0.9_d12.tar.gz
Мы предоставляем 3 версии образа контейнера dks-wsks-6.0.9, построенные на Debian 9, Debian 11 и Debian 12. Если у вас возникают проблемы с установкой образа dks-wsks-6.0.9_d09, то обратитесь к специалисту поддержки.
Самостоятельное решение: скачать и распаковать архив dks-wsks-6.0.9_d09.
Архив находится по адресу: https://keysystems.ru/files/web/Linux/wsks/6.0.9/dks-wsks-6.0.9_d09.tar.gz
Так же просим заметить, что в контейнере wsks-6.0.9_d09 не поддерживается Angie.
Установите контейнер Podman+Apache, или Podman+Nginx, или Podman+Angie, или Docker+Apache, или Docker+Nginx, или Docker+Angie.
Рекомендуется устанавливать Docker+Nginx.
Порт web-сервиса 443 (можно выбрать другой свободный), порт prometheus 9093 (можно выбрать другой свободный).
Обращаем ваше внимание, что необходимо устанавливать только один вариант из предоставленных ниже, в зависимости от п.3. установленного ПО контейнеризации (docker/podman).
Docker+Nginx:
/opt/dks-wsks-6.0.9/install.sh -ws "nginx" -p "443" -cs "docker" -pp "9093"
Docker+Apache:
/opt/dks-wsks-6.0.9/install.sh -ws "apache2" -p "443" -cs "docker" -pp "9093"
Docker+Angie (не поддерживается в wsks-6.0.9_d09):
/opt/dks-wsks-6.0.9/install.sh -ws "angie" -p "443" -cs "docker" -pp "9093"
Podman+Nginx:
/opt/dks-wsks-6.0.9/install.sh -ws "nginx" -p "443" -cs "podman" -pp "9093"
Podman+Apache:
/opt/dks-wsks-6.0.9/install.sh -ws "apache2" -p "443" -cs "podman" -pp "9093"
Podman+Angie (не поддерживается в wsks-6.0.9_d09):
/opt/dks-wsks-6.0.9/install.sh -ws "angie" -p "443" -cs "podman" -pp "9093"
Важно! В случае, если порт web-сервиса использовался отличный от 443, то наименование установленного контейнера будет иметь вид wsks-6.0.9_54хх, поэтому нужно быть внимательнее, т.к. дальнейшая инструкция установки описана для контейнера с портом 443 (wsks-6.0.9_443).
Задача: развернуть .NET Core приложение "Бюджет-NEXT" для работы с СУБД PostgreSQL
с именем сервера 10.38.46.22:5434
и базы данных razr_241_test00_pg
, Обращение к сайту обеспечить через виртуальный каталог budgetnext
.
wget -O /opt/wsks-6.0.9_443/ctl/tar_files/webnext.tar.gz "https://keysystems.ru/files/web/INSTALL/BUDGET_NEXT/24.2/webnext-242.tar.gz" --no-check-certificate
bash /opt/wsks-6.0.9_443/ctl/ws_addapp.sh -t "wBKS" -a "webnext.tar.gz" -vc "budgetnext" -st "3" -sn "10.38.46.221:5434" -dn "razr_242_test3_pg"
https://keysystems.ru/files/web/INSTALL/BUDGET_NEXT/24.2/webnext-242.tar.gz
- Постоянная ссылка на актуальную версию "Бюджет-NEXT";"wBKS"
- приложение «Бюджет-NEXT»; "webnext.tar.gz"
- имя файла архива *.tar.gz в зависимости от версии; "bubgetnext"
- имя виртуального каталога для приложения, назначаете самостоятельно; "3"
- тип источника СУБД; 0-MSSQL, 3-PostgreSQL; "10.38.46.221:5434"
- имя источника СУБД; "razr_242_test3_pg"
- база данных источника СУБД.Если установка выполнена успешно, то при запуске стартовой страницы в браузере: https://<host_ip>:443/budgetnext
должна появиться форма для ввода логина и пароля. Порт для внутреннего web сервера Kestrel 54430 был назначен автоматически.
ВАЖНО! После установки "Бюджет-NEXT" необходимо настроить кэш списков (установить СУБД-КС) на отдельном Linux-сервере, если планируется работа более 5 пользователей.
Команда для просмотра информации о развернутых приложениях «Web-Сервер-КС» 6.0.9_443:
bash /opt/wsks-6.0.9_443/ctl/ws_info.sh
Команда для перезапуска приложения на kestrel порту 443:
bash /opt/wsks-6.0.9_443/ctl/ws_ctlapp.sh -p "54430" -m "restart"
Команда для перезапуска сервиса «Web-Сервер-КС» 6.0.9_443:
systemctl restart wsks-6.0.9_443_443.service
Команда для проверки статуса сервиса «Web-Сервер-КС» 6.0.9_443:
systemctl status wsks-6.0.9_443.service
Команда для удаления контейнера:
/opt/dks-wsks-6.0.9/uninstall.sh -p "443"