Web-администрирование серверов 1С: различия между версиями
Дым (обсуждение | вклад) Нет описания правки |
Дым (обсуждение | вклад) |
||
(не показано 36 промежуточных версий этого же участника) | |||
Строка 1: | Строка 1: | ||
Вкратце: | Всё нижеследующее можно сделать на железе, но зачем, если [[Контейнеры_systemd-nspawn|контейнеризация]] работает «из коробки»? | ||
=Вкратце= | |||
#Разворачиваем альт-контейнер в конфигурации: 2 ядра, 2 ГБ памяти, 4 ГБ места (занято будет тоже 2, но | [[Файл:Ras1c-add.png|мини|Добавление сервера]] | ||
#Обновляем его: {{cmd|# apt-get update && apt-get dist-upgrade}} | #Разворачиваем альт-контейнер в конфигурации: | ||
#Доустанавливаем надобности: {{cmd|# apt-get install -y | #:*2 ядра (похоже, и одного хватает), | ||
# | #:*2 ГБ памяти (хотя и полутора достаточно), | ||
#:*4 ГБ места (занято будет тоже 2, но пойдут логи — да и вообще запас карман не тянет). | |||
#Скачиваем с [https://its.1c.ru/db/metod8dev#content:4985:hdoc этой] странички | #Обновляем его: {{cmd|# apt-get update && apt-get -y dist-upgrade}} | ||
#Извлекаем в {{path|/opt/pusk/}} | #Доустанавливаем надобности: {{cmd|# apt-get install -y ...''(см. список ниже)''}} | ||
#:*'''java-17-openjdk''' — для запуска ЯВной веб-морды; | |||
#:*'''unzip''' — для распаковки библиотек; | |||
#:*'''mc''' — для распаковки не командами, а копированием нужного каталога из архива (и вообще штука нужная): | |||
#:*'''sudo''' — для инсталляции сервиса (можно прямо из '''mc'''); | |||
#:*'''lsof''' — для проверки его доступности; | |||
#:*'''htop''' — для слежения за его нагрузками. | |||
#Распаковываем содержимое [https://it-expertise.ru/pusk/?utm_source=altlinux&utm_medium=organic&utm_campaign=pusk#download архива] (<code>ite-pusk-v*.tar.gz</code>) '''П'''анели '''У'''правления '''С'''лужбами '''и К'''омпонентами ('''ПУСиК''') в {{path|/opt/}}. | |||
#Скачиваем с [https://its.1c.ru/db/metod8dev#content:4985:hdoc этой] странички ещё один архив по ссылке [https://its.1c.ru/db/files/1CITS/EXE/java-api-8.3.11/java-api-8.3.11.zip '''«Копировать java-api для версий платформы 8.3.11 и старше»'''] — или более новую версию, когда появится. | |||
#Извлекаем из его глубоких потрохов (архив в архиве архива) в {{path|/opt/pusk/}} каталог {{path|lib}} | |||
#Копируем в тот же {{path|/opt/}} уже развёрнутую свежую 1С-ку (со своего компа, к примеру: {{path|/opt/1cv8}}), удостоверившись, что в самом нижнем её подкаталоге есть бинарник {{cmd|ras}} — им будет запускаться собственно RAS. | #Копируем в тот же {{path|/opt/}} уже развёрнутую свежую 1С-ку (со своего компа, к примеру: {{path|/opt/1cv8}}), удостоверившись, что в самом нижнем её подкаталоге есть бинарник {{cmd|ras}} — им будет запускаться собственно RAS. | ||
#Запускаем {{cmd|# /opt/pusk/ite-pusk-linux.sh install}} | #Запускаем установку: {{cmd|# /opt/pusk/ite-pusk-linux.sh install}} | ||
#По | #По её '''ОК'''ейному завершению командуем: {{cmd|# systemctl enable --now ite-pusk}} | ||
#Спустя минуту проверяем, что | #Спустя минуту проверяем, что сервис поднят: | ||
#: | #:<source lang=bash> | ||
< | [root@ras1c ~]# lsof -ni :8080 | ||
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME | COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME | ||
java 155 root 16u IPv6 228332872 0t0 TCP *:webcache (LISTEN) | java 155 root 16u IPv6 228332872 0t0 TCP *:webcache (LISTEN) | ||
</ | </source> | ||
#Браузером по адресу http://ип.или.имя.контейнера:8080/ заполняем '''{{nav|Подключения|Добавить}}''' ''(см. верхний снимок)''. | |||
#И — за работу! ''(см. нижний снимок)'' | |||
[[Файл:Ras1c-work.png|мини|Рабочее соединение]] | |||
=Примечания= | |||
Порт веб-морды меняется через конфиг {{path|/opt/pusk/data/application.properties}} | |||
А если хочется безопасности, то не зная, как это прикрутить к яве (и возможно ли вообще такое), вижу один вариант: | |||
#поставить nginx и настроить в нём перекид с 80 порта на самосертифицированный 443 с прицелом на порт 8080 (ЯВная веб-морда); | |||
#подключения к 8080 извне закрыть фаерволом. | |||
=Обратная связь= | |||
*[https://t.me/gbIMoBou @gbIMoBou] | |||
*[[Участник:Дым#Заметки|Другие статьи]] |
Текущая версия от 06:46, 28 июня 2024
Всё нижеследующее можно сделать на железе, но зачем, если контейнеризация работает «из коробки»?
Вкратце
- Разворачиваем альт-контейнер в конфигурации:
- 2 ядра (похоже, и одного хватает),
- 2 ГБ памяти (хотя и полутора достаточно),
- 4 ГБ места (занято будет тоже 2, но пойдут логи — да и вообще запас карман не тянет).
- Обновляем его: # apt-get update && apt-get -y dist-upgrade
- Доустанавливаем надобности: # apt-get install -y ...(см. список ниже)
- java-17-openjdk — для запуска ЯВной веб-морды;
- unzip — для распаковки библиотек;
- mc — для распаковки не командами, а копированием нужного каталога из архива (и вообще штука нужная):
- sudo — для инсталляции сервиса (можно прямо из mc);
- lsof — для проверки его доступности;
- htop — для слежения за его нагрузками.
- Распаковываем содержимое архива (
ite-pusk-v*.tar.gz
) Панели Управления Службами и Компонентами (ПУСиК) в /opt/. - Скачиваем с этой странички ещё один архив по ссылке «Копировать java-api для версий платформы 8.3.11 и старше» — или более новую версию, когда появится.
- Извлекаем из его глубоких потрохов (архив в архиве архива) в /opt/pusk/ каталог lib
- Копируем в тот же /opt/ уже развёрнутую свежую 1С-ку (со своего компа, к примеру: /opt/1cv8), удостоверившись, что в самом нижнем её подкаталоге есть бинарник ras — им будет запускаться собственно RAS.
- Запускаем установку: # /opt/pusk/ite-pusk-linux.sh install
- По её ОКейному завершению командуем: # systemctl enable --now ite-pusk
- Спустя минуту проверяем, что сервис поднят:
[root@ras1c ~]# lsof -ni :8080 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME java 155 root 16u IPv6 228332872 0t0 TCP *:webcache (LISTEN)
- Браузером по адресу http://ип.или.имя.контейнера:8080/ заполняем Подключения ▷ Добавить (см. верхний снимок).
- И — за работу! (см. нижний снимок)
Примечания
Порт веб-морды меняется через конфиг /opt/pusk/data/application.properties
А если хочется безопасности, то не зная, как это прикрутить к яве (и возможно ли вообще такое), вижу один вариант:
- поставить nginx и настроить в нём перекид с 80 порта на самосертифицированный 443 с прицелом на порт 8080 (ЯВная веб-морда);
- подключения к 8080 извне закрыть фаерволом.