Развертывание http-сервиса OneScript на Raspberry Pi

Публикация № 821434

Разработка - Языки и среды - OneScript

web http-сервис raspberry pi OneScript

26
В статье описан процесс настройки, а также процесс развертывания http-сервиса (web-приложения) OneScript на Raspbian (Raspberry Pi 2).

Введение
Идея попробовать установить OneScript на устройство типа Raspberry Pi возникла у меня давно, однако сей эксперимент постоянно откладывался, ввиду различных обстоятельств. И вот, улучив момент, когда ребенок смотрел мультфильмы, я наконец-таки решил попробовать. О том, что из этого получилось - читайте ниже. 

Приборы и материалы
В качестве устройства, в экспериметах использовался Raspberry Pi 2.
В качестве операционной системы, на которую производилась установка, использовалась Raspbian OS. Само устройство, поддерживает достаточно большое количество операционных систем, среди которых есть и Ubuntu без графического интерфейса. Конечно, для практического использования - это более правильный вариант, однако, ввиду того, что экспериментальное устройство принадлежит ребенку, и количество времени, выделенное на эксперимент было ограничено, было принято решение использовать уже установленную ОС.
Поскольку Raspbian OS имеет в своей основе Debian, настройка системы мало отличается от настройки Ubuntu Server, описанной в соответствующей статье. Соответственно, моменты одинаковые для обеих ОС, подробно рассматриваться не будут. 

Настройка системы
Получаем доступ к командной строке
Как и в случае с Ubuntu Server, Вы можете подключиться к устройству при помощи клиента SSH, предварительно разрешив подключения в ОС, или запустить штатный LXTerminal из графической оболочки.

Обновляем список доступных пакетов и устанавливаем новые версии
В командной строке выполняем следующие команды:
 

sudo apt-get update
sudo apt-get upgrade


Устанавливаем mono
Сначала я попробовал установить mono из штатного репозитария, однако, как впоследствии выяснилось, версия mono в нем старая, и ядро OneScript завершало работу с ошибкой, поэтому необходимо подключить репозитарий mono-project.
Поиск в google выдал необходимую ссылку с инструкцией.
Обратите внимание, что ссылки для Raspberry отличаются от тех, которые используются для подключения репозитария x86.
Для подключения репозитария, в командной строке выполняем нижеследующие команды:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF 
echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list 
sudo apt-get update && apt-get upgrade 

Для установки mono выполняем:
 

sudo apt-get install mono-complete

Установка web-сервера
Не смотря на то, что для Raspbian есть и apache и mod-mono, и вроде-бы все должно быть хорошо, гугл выдал некоторое количество публикаций, в которых говорится о проблемах с использованием mod-mono server на Raspberry. Поэтому было принято решение, использовать в качестве web-сервера XSP (к тому-же установка apache и mono-mod-server уже описана в другой статье). Это простой web-сервер, который как правило используется для разработки и отладки, однако, он может быть успешно применен и в продуктивных средах в связке с ngix. Поскольку время эксперимента, а также файловые ресурсы на SD-карте устройства были ограничены, я ограничился установкой только XSP.
Для установки XSP, в командной строке выполните следующую команду:
 

sudo apt-get install mono-xsp4

Развертывание приложения
В качестве приложения для развертывания было выбрано приложение, описанное в этой статье (//catalog.mista.ru/public/792995/).
В папке /home/pi, была создана папка onescript, куда и было разархивировано содержимое архива приложения.
После распаковки, файл Web.config был переименован в _Web.config, а файл web.config.linux соответственно в web.config.

Запуск приложения
Поскольку web-сервер XSP не является службой (демоном), запуск web-сервера был произведен "вручную".
Для запуска, необходимо перейти в папку с web-приложением: 

cd /home/pi/onescript


и запустить web-сервер

xsp4


После старта, web-сервер сообщит нам информацию, необходимую для доступа к web-приложению

После ввода в браузере соответствующего url, мы увидим наше web-приложение.

Для автоматического старта XSP при старте ОС, необходимо внести небольшие изменения в загрузочные скрипты, однако в силу того, что я не тестировал эти настройки, эта тема выходит за рамки настоящей статьи.

Заключение 

OneScript, в частности http-сервисы, можно вполне успешно использовать на устройствах Raspberry Pi, версии >= 2. Это может быть полезно в тех случаях, когда использовать отдельный компьютер или виртуальную машину нецелесообразно (ну и в конце концов - просто интересно :)).

26

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. nomadon 377 23.04.18 14:05 Сейчас в теме
Хорошо что малинка начала на инфостарте появляться:)
Ждем появления апача с модулем so на домашнем роутере и реверс прокси на старый адроид (заголовок: "Когда заблокировали Azure, но в 1с очень нужно или как мы собрали кластер серверов из подручного железа")
nikita0832; +1 Ответить
2. Alsegan 24.04.18 22:35 Сейчас в теме
А никто не задавался вопросом,может ли быть профит от развертывания 1С на 30 соединенных малинках и будет ли это работать? А то знаю , что из нескольких машинок собирают минисупер компьютеры, но не знаю есть ли применение таким сборкам кроме как в математических вычислениях.
3. blackhole321 1040 25.04.18 06:56 Сейчас в теме
(2) на счёт 1с -вряд ли. Я давным давно пытался развернуть 1С 8.3 файловую с использованием ExaGear (http://raspberrypi.ru/blog/644.html). Появлялся не то splash screen, не то окно логина и все намертво висло.
А так, можно делать штуки типа https://infostart.ru/public/669242/
5. UtrobinMV 14.05.18 13:06 Сейчас в теме
(2)
А никто не задавался вопросом,может ли быть профит от развертывания 1С на 30 соединенных малинках


Я думаю, если умножить стоимость серверной лицензии установленной на малинку на 30 раз, то "профита" точно никакого не будет! ;-)
6. olegmedvedev 14.05.18 13:38 Сейчас в теме
(5) а зачем ставить серверную лицензию 30 раз?
8. UtrobinMV 22.05.18 10:28 Сейчас в теме
(6)потому что 30 серверов (малинок)
9. olegmedvedev 22.05.18 10:34 Сейчас в теме
(8)я не совсем в теме - поэтому вопрос - а эта штукень в 30 штук разве не может работать параллельно (одна ОСь на 30 штук)? или точно есть необходимость на каждую малинку ставить свою ОСь?
10. UtrobinMV 23.05.18 18:41 Сейчас в теме
(9)Вопрос выходит за рамки данной конференции.
7. UtrobinMV 22.05.18 10:28 Сейчас в теме
11. Voblhned 39 07.02.19 19:39 Сейчас в теме
мне было интересно на Расбери фаловую базу залить самопись, и веб к ней. Там чисто 3 клиента и объем мизерный, серв в таком случае ставить или комп нецелесообразно, а закинуть базу размером 15мб и кинуть ее на роутер просто идеальный вариант.
Оставьте свое сообщение

См. также

Автоматическое сравнение-объединение баз данных с мини-конфигурацией 2

Статья Программист Компонента, плагин (dll, vbs,..) v8 Windows Бесплатно (free) OneScript

Представляю вашему вниманию скрипт на OneScript для автоматического сравнения-объединения по правилам ("мержевания") конфигураций нескольких баз с мини-конфигурацией.

14.10.2019    341    artkor    2       

АИТП. Подсистема взаимодействия с рабочими серверами OneScript 20

Статья Системный администратор Программист Нет файла v8 Бесплатно (free) OneScript

В статье описан механизм взаимодействия конфигурации АИТП с рабочими серверами OneScript.

22.05.2019    2922    blackhole321    33       

1Script.Web. Интернет-приложения на языке 1С 119

Статья Программист Нет файла v8 Бесплатно (free) WEB OneScript

Запросы рынка таковы, что любое современное клиент-серверное приложение должно иметь веб-интерфейс. Почему бы не писать такие приложения на языке 1С? Андрей Овсянкин расскажет о возможностях разработки веб-приложений на базе 1Script, рассмотрит перспективы этого направления и в качестве демонстрации покажет «боевое» веб-приложение на новом движке – кроссплатформенную консоль администрирования парка кластеров 1С.

20.05.2019    11633    Evil Beaver    32       

Создание высокодоступной фермы рабочих серверов OneScript в ОС Centos 7 12

Статья Системный администратор Программист Нет файла Linux Бесплатно (free) OneScript

В статье описана методика создания высокодоступной фермы рабочих серверов OneScript, для конфигурации АИТП.

14.05.2019    2514    blackhole321    0       

Разворачиваем рабочий сервер OneScript для конфигурации АИТП 26

Статья Системный администратор Программист Нет файла v8 Linux Бесплатно (free) OneScript

В статье описана методика развертывания рабочего сервера OneScript для конфигурации АИТП, на ОС CentOS 7.

09.05.2019    3639    blackhole321    0       

Хостим OneScript.Web приложение (heroku) 18

Статья Программист Нет файла Бесплатно (free) OneScript

Развертывание oscript.web в heroku.

19.12.2018    3970    pallid    4       

Хостим OneScript.Web приложение 28

Статья Программист Нет файла Бесплатно (free) OneScript

Удобная возможность для размещения своего OneScript.Web приложение, это завернуть его в docker. Остается вопрос: где разместить контейнер, сделать это можно на vscale или DO, но хочется упростить и не делать установку самого docker на хосте. Один из вариантов - это сервис now https://zeit.co/.

04.07.2018    5700    pallid    3       

Добавляем онлайн-чат в web-приложение OneScript 16

Статья Программист Нет файла v8 Бесплатно (free) OneScript

В статье рассмотрено подключение онлайн-чата к web-приложению на основе http-сервисов OneScript

24.06.2018    5346    blackhole321    1       

Сказ про то, как я DevOps-ом занимался (OneScript, Deployka, Jenkins) 112

Статья Системный администратор Программист Нет файла v8 1cv8.cf ИТ-компания Бесплатно (free) OneScript DevOps Jenkins

Решаем задачу: автоматизировать обновление тестовых баз 1С из хранилища конфигурации при появлении в нём новых изменений. Данная статья родилась в муках хождения по граблям и поиска безопасного форватора среди подводных камней. Изложение постарался представить в виде инструкции для новичка, в которой собрал всё, с чем пришлось столкнуться. Сам я не DevOps-ер, ни на что не претендую, просто делюсь опытом :)

17.06.2018    14892    stas_ganiev    33       

Макеты в http-сервисах OneScript 10

Статья Программист Нет файла v8 Бесплатно (free) OneScript

В статье описана библиотека, реализующая механизм макетов в http-сервисах OneScript, аналогично платформе 1С:Предприятие.

03.06.2018    5800    blackhole321    1       

Перечисления в http-сервисах OneScript 7

Статья Программист Нет файла v8 Бесплатно (free) OneScript

В статье описывается библиотека, реализующая механизм перечислений в http-сервиах OneScript, аналогичный механизму платформы 1С:Предприятие

03.06.2018    5432    blackhole321    13       

Обработки в http-сервисах OneScript 11

Статья Системный администратор Программист Нет файла Бесплатно (free) OneScript

В статье описана библиотека, реализующая механизм обработок в http-сервисах OneScript.

25.05.2018    5605    blackhole321    0       

Расширенные методы загрузки внешних библиотек в http-сервисах OneScript 5

Статья Программист Нет файла Бесплатно (free) OneScript

В статье описаны расширенные методы загрузки внешних библиотек в http-сервисах OneScript на примере механизма фоновых заданий.

25.05.2018    5403    blackhole321    0       

Сборка, тестирование, доставка приложения на onescript с помощью gitlab-ci 33

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) OneScript

Сборка, тестирование, доставка приложения на onescript с помощью gitlab-ci на примере портирования на onescript функции daСклонение.

14.05.2018    9480    pallid    3       

OneScript в облаке или Развертываем http-сервис OneScript на хостинге 23

Статья Программист Нет файла Бесплатно (free) OneScript

В статье описан процесс развертывания web-приложения, созданного на базе http-сервисов OneScript на бесплатном хостинге.

05.05.2018    7199    blackhole321    0       

TMSSQL - работа с базами данных MS SQL Server в скриптах на OneScript и из командной строки 56

Статья Системный администратор Программист Нет файла v8 Windows Бесплатно (free) OneScript

Представляю вашему вниманию библиотеку TMSQL для работы с базами данных на MS SQL Server. Библиотека подключается в качестве модуля или класса в скрипты, написанные на OneScript, а также может работать как независимое консольное приложение.

26.04.2018    11195    Tavalik    22       

Создаем свою библиотеку для OneScript 147

Статья Системный администратор Программист Нет файла v8 Бесплатно (free) OneScript

Как упаковать свою библиотеку в пакет? Что такое загрузчик и зачем он нужен? Как вообще создать свою библиотеку? Разбираемся на примере.

06.03.2018    16783    nixel    35       

Развертывание http-сервиса (web-приложения) OneScript на Ubuntu Server 16.04 43

Статья Системный администратор Программист Нет файла Ubuntu Бесплатно (free) OneScript

В статье описан процесс настройки сервера, а также процесс развертывания http-сервиса (web-приложения) OneScript на Ubuntu Server 16.04

04.03.2018    12580    blackhole321    14       

Обзор имеющихся библиотек OneScript 299

Статья Системный администратор Программист Нет файла v8 Бесплатно (free) OneScript

Экосистема OneScript активно развивается. Количество пользователей данного интерпретатора и имеющихся библиотек неуклонно растет, количество решаемых проблем - тоже. Однако остро встает вопрос некоторой разобщенности и размазанности информации по имеющимся библиотекам, их функциональности и проблемам, которые они решают. Данная статья призвана навести порядок в этой теме.

14.11.2017    30720    nixel    85       

Начало работы с OneScript 136

Статья Системный администратор Программист Нет файла Бесплатно (free) OneScript

Краткая инструкция по установке и начале работы с OneScript. Пишу потому что сам много шишек набил, пока нашел все инструменты. В статье рассмотрены: 1) Установка OneScript. 2) Установка редактора кода. 3) Настройка редактора кода под OneScript. 4) Запуск скриптов из редактора кода 5) Полезные ссылки

18.10.2017    30381    DmitrySinichnikov    50       

С чего начать разработку скриптов на OneScript? Первые шаги 155

Статья Программист Нет файла Бесплатно (free) OneScript

После моего доклада на INFOSTART 2017 EVENT COMMUNITY ко мне многие обращались с таким вопросом: с чего начать разработку скриптов на OneScript? В этой статье привожу набор ссылок и некий порядок действий (как его вижу я) для людей, не знакомым с этим инструментом.

11.10.2017    21663    Tavalik    12       

Вебинтерфейс для OneScript и 1С 27

Статья Программист Нет файла v8 Россия Windows Бесплатно (free) OneScript

Пример создания вебинтерфейса для OneScript с использованием библиотеки UfaScript.osb

30.06.2017    11171    andreosh    7       

OneScript и Ajax. POST-запрос и мои дальнейшие планы с фантазиями о будущем 11

Статья Программист Нет файла v8 Россия Бесплатно (free) OneScript

Моя библиотека для OneScript (версия 3.0 от 09.06.2017 см.GitHab UfaScript) https://github.com/andreosh/UfaScript теперь позволяет посылать POST-запросы на сервер без использования сторонних библиотек типа jquery.

09.06.2017    15785    andreosh    3       

Как сделать OneScript объектно-ориентированным 10

Статья Программист Нет файла Россия Бесплатно (free) OneScript

Описание метода создания объектов на OneScript и метода передачи функции в качестве параметра.

16.04.2017    6801    andreosh    7